web学习--java applets

1.什么是java Applet?html

  Applet是一种采用java语言编写的小应用程序,它能够被嵌入网页中,当用户访问这样的网页时,Applet被下载到用户的计算机上运行,但前提是具备让applet运行的环境。Applet必须运行于某个特定的“容器”,这个容器能够是浏览器自己,也能够是经过各类插件,或者包括支持Applet的移动设备在内的其余各类程序来运行。与通常的Java应用程序不一样,Applet不是经过main方法来运行的。在运行时Applet一般会与用户进行互动,显示动态的画面,而且还会遵循严格的安全检查,阻止潜在的不安全因素。java

2.java应用程序和Applet程序的区别web

  • Java 中 Applet 类继承了 java.applet.Applet 类。
  • Applet 类没有定义 main(),因此一个 Applet 程序不会调用 main() 方法。
  • Applet 被设计为嵌入在一个 HTML 页面。
  • 当用户浏览包含 Applet 的 HTML 页面,Applet 的代码就被下载到用户的机器上。
  • 要查看一个 Applet 须要 JVM。 JVM 能够是 Web 浏览器的一个插件,或一个独立的运行时环境。
  • 用户机器上的 JVM 建立一个 Applet 类的实例,并调用 Applet 生命周期过程当中的各类方法。
  • Applet 有 Web 浏览器强制执行的严格的安全规则,Applet 的安全机制被称为沙箱安全。
  • Applet 须要的其余类能够用 Java 归档(JAR)文件的形式下载下来。

3.Applets的工做原理小程序

  当用户访问带有Applets的网页时,Applet被下载到用户的计算机上执行,因为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的信息至少应包含如下三点:网络

  • 字节码文件名(编译后的Java文件,以.class为后缀)
  • 字节码文件的地址
  • 在网页上显示Applet的方式。

4.Applets的生命周期oracle

  Applet类为Applet执行提供了一个框架,定义了当事件发生时系统调用的方法。大多数applet会覆盖一些或全部这些方法以适当地响应事件。app

  ①init:为Applet提供初始化。Applet一般不具备构造函数的缘由是,在调用init方法以前,它们不能保证有完整的环境。保持init方法的简短,以便applet可以快速加载。

  ②start:浏览器调用 init 方法后,该方法被自动调用。每当用户从其余页面返回到包含 Applet 的页面时,则调用该方法。

  ③stop:大部分重写了start方法的也应该重写stop方法。当用户没有停留在含有Applet的页面时,应该中止Applet,以避免占用资源。

  ④destroy:大部分applet不须要重写destroy方法,由于它们的stop方法(在销毁以前调用)将执行关闭Applet执行所必需的全部任务。可是,对于须要释放额外资源的applet来讲是必要的。

5.建立一个Applet

  ①编写源文件

  ②打包

  ③部署

这里我使用的官方的实例,下载地址:https://docs.oracle.com/javase/tutorial/deployment/applet/examplesIndex.html#ComponentArchDynamicTreeDemo

 

 详细步骤:

  1.编译applet的Java代码,并确保全部类文件和资源(例如图像)都位于一个单独的目录中。在DynamicTree演示applet的例子中,编译的类放在 build/classes/appletComponentArch目录中。

  2.对于DynamicTree演示Applet,建立一个名为mymanifest.txt的文件。在build/classes目录中,添加Permissions、Codebase和Application-Name属性。Applet不须要访问用户的系统资源,所以可使用 sandbox 来得到权限。使用你为代码库加载样例的域,例如,myserver.com。将如下属性添加到mymanifest.txt文件。

  3.建立一个包含applet类文件和资源的JAR文件。在mymanifest中包含清单属性。在前一步中建立的txt文件。例如,下面的命令在build/classes/appletComponentArch目录中建立了一个JAR文件,并在build/classes中建立了清单文件。

  4.使用已签名的JNPL文件给JAP包签名,并在打包前将该文件包含在JAR文件中。

 

  5.建立将显示applet的HTML页面。调用部署工具箱函数来部署applet。

最后,将你的JAR包,JNPL签名文件,还有AppletPage放在同一个目录下,能够运行在本地,但最好放在web服务器上。若是没法访问,选择支持运行的浏览器。这里特别说明一下,本地的通常没法运行,由于官方原话:

然而,进入java的控制面板

只能以http和https开头,无果,只能直接放在web服务器上了,官方也推荐放在web服务器上。

最后运行效果:

参考文档:https://docs.oracle.com/javase/tutorial/deployment/applet/examplesIndex.html#ComponentArchDynamicTreeDemo

     http://www.runoob.com/java/java-applet-basics.html

     https://baike.baidu.com/item/Applet/2723730?fr=aladdin

相关文章
相关标签/搜索