Applet性能:在启动时加载所有jar还是仅在需要类时?

时间:2012-02-13 03:30:42

标签: java jar applet load

目前,我的applet是使用少量的lib jars加载的,我将它们放入存档:

<applet
archive="MainJar.jar,lib/jar1.jar,lib/jar2.jar,lib/jar3.jar" 
code="start.MainClass.class"
name = "Testing" 
width=1280 height=800>
<PARAM NAME="zoomon" VALUE="true">
</applet>

我可以知道:

  • 我的所有lib jar(jar1.jar,jar2.jar,jar3.jar)都是在applet启动时下载的,或者只有在访问类时才下载它们?
  • 如果再次访问lib类,lib jar可以用作已下载的版本,还是会重新下载?
  • 如何在applet启动时下载所有jar(包括lib jars)?
  • 如何在MainJar.jar中包含所有lib jar?

3 个答案:

答案 0 :(得分:2)

  • 急切地(使用这种形式启动小程序)。 1
  • 他们应该被缓存。 applet开发人员面临的一个问题是让applet加载更新的 Jar,而不是使用缓存版本。
  • 编写applet标记的方式是自动的。 1
  • 如果'包含在主Jar中'你的意思是只部署一个包含所有东西的'胖'罐子,那就不要那么做了。出于多种原因,最好将Jars分开。

  1. Java Web Start提供了懒惰下载Jars的选项,以及下载的程序化(您的代码)控制。

答案 1 :(得分:0)

我尝试过创建一个applet并从我的浏览器访问它,似乎所有jar文件都会被立即下载并重新使用,只要缓存没有被清除。

答案 2 :(得分:0)

您可以通过将它们全部解压缩到一个目录中来确保立即加载所有罐子,然后将它们装入一个罐子中。还可以缩短存档行。