关于java Applet

来源:互联网 发布:福田网络推手 编辑:程序博客网 时间:2024/06/05 07:17
        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");
        }