云 南 希 地 集 团 股 份 有 限 公 司
段 炼
---- 我 们 知 道, 网 页 中 的Java Applet 虽 不 象 图 像 文 件 可 以 直 接 从 游 览 器 中 以Save as 命 令 获 取, 但 仍 可 能 被 浏 览 者 从Cache 中 找 出, 放 入 自 己 的 网 页。 因 此, 如 果 要 保 护 自 己 的applet 免 遭" 窃 取", 方 法 之 一 是 让Applet 只 运 行 于 指 定URL 的 网 页 中。 在Java 语 言 中,Applet 所 在 网 页 的URL 可 以 由java.applet 程 序 包 中 提 供 了 方 法getDocumenBase() 来 取 得。
---- 例 如, 在 下 面 一 段 程 序 中,Applet 在 初 始 化 阶 段 先 检 测 当 前URL, 一 旦 与 设 定 不 符, 就 在Java 控 制 台(Java Console) 中 输 出 警 告 信 息, 然 后 自 动 中 止 运 行, 从 而 实 现 了Applet 的" 版 权 保 护"。
import java.net.*;
import java.applet.*;
public class myonly extends Applet{
public void init(){
String ower=getDocumentBase().getHost();
if(!ower.equals("www.mydomain.com")){
System.out.println("Warning ! A stolen Applet.");
System.exit(1);
}
else{
… …
}
}