Applet是什么
作者: 更新 :2023-02-20

Applet 是采用 Java 编程语言编写的小应用程序,该程序能够包含在 HTML(规范通用标记语言的一个运用)页中,与在页中包含图像的方法基本相同。
带有 Applet 的网页的 HTML 文档编码中间含有 和那样一对标识,当支持 Java 的网页浏览器碰到这对标识时,就把下载相应的小应用程序编码并在当地计算机上实行该 Applet。
原理
.Java Applet 可以大大提高 Web 界面的互动水平和动态执行能力。包含 Applet 的网页被称作 Java-powered 页,能够称之为 Java 支持的网页。
当
用户访问这种网页时,Applet 被下载到客户的计算机上实行,但前提是客户采用的是支持 Java 的网页浏览器。因为 Applet 要在客户的计算机上实施的,而且它的实行速率不受网络带宽或是 Modem 存取速度限制,客户可以更好的赏析网页上 Applet 造成的多媒体效果。
在 Java Applet 中,能够实现图形绘制,字体和色彩操纵,动画和声音的插进,人机交互及网络交流等服务。 Applet 还提供名叫抽象窗口工具箱(Abstract Window Toolkit, AWT)的窗口环境开发环境。 AWT 运用客户计算机 GUI 原素,能够建立标准的图形界面设计,如窗口、按键、滚动条这些。目前,在网络上有很多的 Applet 案例来生动地呈现这个功能,读者能去调取对应的网页以收看他们效果。
Applet 小应用程序的实现依赖于 java.applet 包里的 Applet 类。与一般的应用程序不同,Applet 应用程序务必置入在 HTML 页面上,才会得到解释执行;同时 Applet 能从 Web 页面上得到参数,并和 Web 页面开展互动。
Applet 是一种 Java 的小程序,它通过使用该 Applet 的 HTML 文档,由支持 Java 的网页浏览器下载运作。还可以通过 java 开发环境的 appletviewer 来运作。Applet 程序离不了应用它 HTML 文档。这一 HTML 文件中有关 Applet 的信息最少应包含以下三点:
1)字节码文件名(编译后 Java 文档,以.clAss 为后缀)
2)字节码文件地址
3)在网页中显示 Applet 的形式。
一个 HTML 文档提升 Applet 相关的内容仅仅使网页更为颇具气愤,如加上响声、动漫等这些吸引人的特点,它并不能更改 HTML 文件中与 Applet 无关元素。
常见方式
applet 的超类是 panel,
public final void sETStub(AppletStub stub)
//设定 Applet 的 stub.stub 是 Java 和 C 中间变换参数并返回值的代码位,是由系统设置的。
public boolean isActive();// 判断一个 Applet 是否处于活动状态。
public URL getDocumentBase();// 查找表明该 Applet 运转的文件名称的对象。
public URL getcodeBase();// 获得该 Applet 代码的 URL 地址。
public String getParameter(String name);// 获得该 Applet 由 name 特定参数的值。
public AppletContext getAppletContext();// 回到浏览器或小应用程序观察器。
public void resize(int width,int height);// 调节 Applet 运转的窗口尺寸。
public void resize(Dimension d);// 调节 Applet 运转的窗口尺寸。
public void showStatus(String msg);// 在浏览器的情况条中显示指定信息。
public Image getImage(URL url); // 按 url 指定地址装进图像。
public Image getImage(URL url,String name);// 按 url 指定地址和文件名载入图象。
public AudioClip getAudioClip(URL url);// 按 url 指定地址获得声音文件。
public AudioClip getAudioClip(URL url, String name);// 按 url 指定地址和文件名获得响声。
public String getAppletInfo();// 回到 Applet 运用相关的作者、版本和版权方面的信息;
public String[][] getParameterInfo();
// 回到叙述 Applet 参数字符串数组,该数组一般包含三个字符串: 参数名、该参数需要值的种类和该参数表明。
public void play(URL url);// 载入并播放一个 url 指定音频剪辑。
public void destroy();//注销 Applet 以及所占用的资源。若该 Applet 是活动,则先停止该 Applet 的运转。
启用 applet
我们都知道因为 java2 安全性,对 applet 的稳定调用的 html 文档早已不能用了,而改成 ActiveX 类别的启用。具体又分 ie 和 nescape 的差异书写,这一些在 sun 网上都能找到现成的教程。
关键
其中我想强调一点,由于 applet 每一次的修改都要重新打包签字,手续十分繁琐,因此在具体的完成中要把一些会转变参数放进 html 文档中,传入 applet 中来,这一点网上文章许多,自己去看吧。
缺点
另外一个就是有朋友问我,那这样不是太麻烦了,每一个客户端都会进行繁杂的 dos 指令操作,我只能说我水准只能把一个已经做好的客户端文档 cer 文件或 java.policy 及其 cacerts 文档立即拷到客户端,当然这也有瑕疵,如果别人的计算机有了验证,便会遗失。就各种问题我们能一起探讨。
提升
此外还有一点提升,便是在装包时,我这儿只说了将所有要用的牵涉到安全性的包和源代码到要打到一个包中。那样假如包特别大得话,会非常影响下载的速率,假如可以用当地计算机包就行了,这一点 jre 也做到了,具体需到操作面板的 jre 控制台上来设定。这个就存着读者自己去探索吧。
完成方式
服务端
1.将程序经常使用的各种包文档所有解压(要用到 WEBLOGIC 的 JMS 包应用指令 jar xf weblogicc.jar),然后使用 JDK 的装包指令将编译好的监控程序.class 和刚刚解压的包一起装包到一个包中。(前提我已将监控程序和解除的包都放到同一个目录下),全是 dos 状态下指令,实际指令见 jdk1.3(1.2)的 bin 目录下,
指令如下:
jar cvf monitor.jar *.class
此指令生成一个名叫 monitor.jar 的包
2.为刚刚建立的包文档(monitor.jar)建立 keystore 和 keys。其中,keystore 将用于储放密匙(private keys)和公共锁匙的认证,alias 别称这里取为 monitor。
指令如下:
keytool -genkey -keystore monitor.keystore –alias monitor
此指令生成了一个名为 monitor.keystore 的 keystore 文档,然后这条指令,系统要问你许多难题,例如公司名字,地址,要设置的密码这些,都能够随便写。
3.应用刚刚产生的锁匙来对 jar 文件进行签字
指令如下:
jarsigner -keystore monitor.keystore monitor.jar monitor
这一指令将对 monitor.jar 文件进行签字,不会形成新文件。
4.将公共锁匙导到一个 cer 文件中,这一 cer 文档就是要拷到客户端的唯一文档 。
指令如下:
keytool -export -keystore monitor.keystore -alias monitor -file monitor.cer
此条指令将形成 monitor.cer 验证文档,当然这两步都可能会问你刚刚设定的密码。那样就完成服务端设置。这时就可以把 jar 文件或 keystore 文档及其 cer 文档(我这儿是 monitor.jar,monitor.keystore,monitor.cer)拷到服务器的目录下。
- END -