摘要
本技巧说明如何创建一个档案文件,使它包含您的所有类文件,以便 netscape 浏览器用户能在最短时间内下载您的 applet!
现在人们对 java 常发的牢骚之一便是它的性能。影响用户对 java applet 速度和价值的认识的一个重大因素是:加载组成 applet 的所有类要花很长时间。我们曾经愿意花一分钟或更长时间等待 applet 的下载,而我们做这一切只是为了看一些无聊的动画。不幸的是,对性能的这种负面印象可能使实际上很有用的 applet 也显得没什么用处了。
要理解这种新的 applet 加载方法速度较快的原因,您需要知道为什么当前的方法速度如此之慢。一个 applet 通常由许多 java .class 文件组成。对于每个类文件,类加载器必须打开一个从浏览器到 applet 代码所在服务器的单独套接字连接。因此,如果您的 applet 由 18 个 .class 文件组成,浏览器必须至少打开 18 个套接字才能将每个文件传送到位。设置及断开每个连接的开销相当大。例如,设置每个连接需要来回传送大量的网络数据包,这样会大大延长总响应时间(尤其是在网络日益拥挤的今天)。(要了解有关套接字连接开销的具体细节,请查阅一本重要的 tcp/ip 参考手册。)
到现在,您可能已想出这一问题的解决方案了:将所有 .class 文件都放在一个大文件中,这样只需建立一个连接即可下载整个 applet。真是个好主意!这正是 netscape 和 microsoft 两大 java 浏览器阵营的共同想法。
不幸的是,他们提出的两个解决方案并不直接兼容。microsoft,出于自身的不同需要,创建了自己的 cab 文件格式。netscape 的解决方案是使用现有的、人们熟知的 .zip 档案文件格式。幸运的是,如果愿意,我们可以编写 html 代码来处理这两种格式。这是因为每种专用文件格式是由
现在您可以用 .cab 和 zip 档案文件来解决下载速度慢的问题,我想我应该告诉您,javasoft 在 jdk 1.1 中已定义了一种新的档案文件格式,您可以用这种新的格式将所有图像文件、音频文件和类文件打包在一个文件中。javasoft 将这种格式称为 java archive (jar)。
闽公网安备 35060202000074号