用程序中和Applets小程序中使用archive 之一
使用Java Archive文件
一个applet是在浏览器中运行的Java程序 。如果你使用过applets,你就会知道一个简单的Java程序可以带有很多相关的源文件,诸如存储实际代码的Java类文件,applet中要用到的图形文件,以及其他类型的媒体文件。为了使得程序员和非程序员们更容易地使用Java applets, Java 1.1引进了一个archive(档案文件)系统,可以让你把所有相关的源文件打包成一个称为Java archive (JAR)的单一文件。
这里,我们使用了archive这个术语,用来表明一个文件,其中包含了很多其他文件。如果你使用过ZIP软件压缩工具,把你的硬盘资料备份到磁带上,你实际上已经使用过archives文件了。大多数ZIP压缩工具在把文件存储在archive中之前,已经将相关文件进行了压缩,以节省空间。同样,Java archives中的文件也经过了压缩,以节省空间。事实上, Java在其archives中使用的也是ZIP压缩格式。
另外一个使用压缩过的archive文件的好处是:它们可以大大改进applets的性能,客户和服务器两端的性能都可以因此而得到改善。压缩过的archives占用的存储空间更少,你的浏览器在下载这些archives时将比下载未经压缩的文件节省了很多时间。在网络服务器中,所节省下来的时间也是很可观的。服务器为每个文件生成一个单独的HTTP事务,而每个事务就得占用服务器的资源,而且每生成一个事务也要花费处理器几秒的时间。这样,通过把许多文件打包压缩成为一个文件,你就可以提高服务器的响应时间,减少用户的等待时间。我们大家都讨厌漫长的等待。
直到最近, Java archives才可以同applets配合使用,因为这个原因,大多数人往往认为Java archive仅仅只能用在applets中。实际上, Java 1.2的所作的改进,使得你可以很容易地在应用程序中也可以使用archives文件。如果Java Development Kit安装在你的计算机上,你可以使用Java archive工具软件 JAR来创建archive。一般情况下,可以在DOS或者Unix环境下运行JAR。图一总结了JAR的常用语法。
用于Java Archive文件的一般命令,包括创建,展开,察看和运行Java Archive。
| 操作 | 命令 |
| 创建 JAR 文件 | jar cf jar-file input-file(s) |
| 察看JAR文件的内容 | jar tf jar-file |
| 从JAR文件中展开内容 | jar xf jar-file |
| 运行JAR文件包应用( 1.1版本适用) | jar xf jar-file archived-file(s) |
| 运行JAR文件包应用(版本1.2适用; 需要 Main-Class 头) | jre -cp app.jar MainClass |
| 引用JAR的Applets |
同大多数其他的命令行工具不一样的是,JAR不需要你使用连字号或者斜线指明选项。当你创建一个archive文件的时候,你通常传递给JAR 两个参数选项:c 用于创建archive,f 用于指明archive文件名。这些选项之后就跟着archive文件名,(archive文件的扩展名为.jar ),之后,再跟着包含在archive中的文件列表清单。下面的例子中,JAR创建了一个称为myarchive.jar的archive,它包含了如下三个文件:ccMain.class, vid.class和banner.gif。
jar cf myarchive.jar ccMain.class
vid.class banner.gif
如果你得到了别人创建的archive ,你想知道里面包含了哪些文件。要做到这一点,你可以使用t 选项,以显示出archive中的内容列表。下面的例子列出了名为myarchive.jar的archive文件中的内容清单:
jar tf myarchive.jar
通常,当你正在把文件进行归档操作(archive)时,你想知道究竟发生了什么事情,或者打算列出文档中的内容清单,于是你就可以使用v (用于详细显示) 选项。你可以把该选项同其他以前讨论过的选项结合使用。当你使用c,v和f 选项来创建archives 时, JAR将给出大量关于archive在处理过程中的详细信息:你可以看到文件被加入到archive中,源文件的大小,被压缩后的文件大小,以及从这些文件中节省了多少空间。例如,如果你创建了下列archive:
jar cvf keyarchive.jar keys.class comp.class talk.class
Java archive工具软件将详细显示出如下的过程处理信息:
adding: keys.class in=19612 out=4810 deflated 75% adding: comp.class in=9554 out=4105 deflated 57% adding: talk.class in=42453 out=9021 deflated 78%
这里,Java archive工具把三个文件加入到archive中。你可以在in参数中看到源文件的大小,也可以在out参数中看到压缩后的文件大小,每个文件被压缩后所节省的空间的百分比也在最后显示出来。你可以看到,三个源文件的大小大约共为70K,JAR成功地把它们压缩到一个大约为18K的archive文件中,当你使用标准调制解调器传输这些文件时,效率大不一样。
下一页 <
0 Responses to "用程序中和Applets小程序中使用archive 之一"
发表评论