Applet是运行在Web浏览器中的小程序。由于它们应用于互联网络,必须保证安全,所以Applet只能完成有限的功能。但是,Applet的确是客户端编程的一个强有力的工具。
限制
Applet编程由于安全原因受到功能方面的限制。Java运行环境总是监控着Applet的所有动作。Applet的主要目的是扩展Web浏览器的功能。
为了保证安全,必须有如下限制:
• Applet不能够触及本地计算机的硬盘。也就是说,Applet不能够读写硬盘。这是因为我们一般不容许别人利用Applet在未经我们同意的前提下访问我们的私有数据。我们当然更加反对Applet直接写入本地硬盘,否则计算机病毒就会大行其道了。
• 每次运行时,需要将程序从服务器下载到本地计算机,所以,Applet往往需要较长的时间下载、启动。Web浏览器可能会缓存部分Applet程序,但是并不确保会缓存每个具体的Applet。正因为如此,我们应该将Applet的各个构件,包括所有的class文件、声音文件、图像文件等压缩到一个jar文件,便于将有关文件一次性从服务器下载下,减少连接服务器的次数。
优点
如果我们能够接受上述限制,那么,我们就可以利用Applet的优点。
• 没有安装问题。Applet是完全跨平台兼容的,所以不用为不同的平台作任何修改,也不需要任何人去做任何安装工作。实际上,用户每次下载包含有Applet的网页时,Applet就自动被安装,所以,软件也能自动更新。
• 不用担心Applet会给本地计算机带来损坏。由于Java语言本身以及Applet的安全性设计,Applet特别适合于Intranet客户-服务器应用。
部署
在页面中使用<applet>标签,例如:
<APPLET codebase="." archive="sea.jar" code="com.lion.test.applet.HelloWorldApplet.class">
<param name="xxx" value="xxx">
</APPLET>
其中,archive指定applet所在的jar文件;codebase指定applet文件的位置;code指定applet类名。param标签用以实现参数转递,
为了屏蔽applet部署技术在各个浏览器中的差异,可以使用SUN提供的HtmlConverter工具对上面的applet标签进行转换。HtmlConverter位于java_home/bin目录下。
参数传递
页面中可以使用<param>标签声明applet的初始化参数。在applet的生命周期中,init()方法可以读取参数值。如:
public void init() {
String name = getParameter("name");
}
限制
Applet编程由于安全原因受到功能方面的限制。Java运行环境总是监控着Applet的所有动作。Applet的主要目的是扩展Web浏览器的功能。
为了保证安全,必须有如下限制:
• Applet不能够触及本地计算机的硬盘。也就是说,Applet不能够读写硬盘。这是因为我们一般不容许别人利用Applet在未经我们同意的前提下访问我们的私有数据。我们当然更加反对Applet直接写入本地硬盘,否则计算机病毒就会大行其道了。
• 每次运行时,需要将程序从服务器下载到本地计算机,所以,Applet往往需要较长的时间下载、启动。Web浏览器可能会缓存部分Applet程序,但是并不确保会缓存每个具体的Applet。正因为如此,我们应该将Applet的各个构件,包括所有的class文件、声音文件、图像文件等压缩到一个jar文件,便于将有关文件一次性从服务器下载下,减少连接服务器的次数。
优点
如果我们能够接受上述限制,那么,我们就可以利用Applet的优点。
• 没有安装问题。Applet是完全跨平台兼容的,所以不用为不同的平台作任何修改,也不需要任何人去做任何安装工作。实际上,用户每次下载包含有Applet的网页时,Applet就自动被安装,所以,软件也能自动更新。
• 不用担心Applet会给本地计算机带来损坏。由于Java语言本身以及Applet的安全性设计,Applet特别适合于Intranet客户-服务器应用。
部署
在页面中使用<applet>标签,例如:
<APPLET codebase="." archive="sea.jar" code="com.lion.test.applet.HelloWorldApplet.class">
<param name="xxx" value="xxx">
</APPLET>
其中,archive指定applet所在的jar文件;codebase指定applet文件的位置;code指定applet类名。param标签用以实现参数转递,
为了屏蔽applet部署技术在各个浏览器中的差异,可以使用SUN提供的HtmlConverter工具对上面的applet标签进行转换。HtmlConverter位于java_home/bin目录下。
参数传递
页面中可以使用<param>标签声明applet的初始化参数。在applet的生命周期中,init()方法可以读取参数值。如:
public void init() {
String name = getParameter("name");
}