WEB开发网
开发学院软件开发Java 关于 JAR 您不知道的 5 件事 阅读

关于 JAR 您不知道的 5 件事

 2010-07-23 00:00:00 来源:WEB开发网   
核心提示: 一些配置文件可用 sysadmin 进行编辑,但是其中很大一部分(例如 Hibernate 映射)都位于 sysadmin 域之外,关于 JAR 您不知道的 5 件事(5),这将导致部署漏洞,一个合理的解决方案是将配置文件和代码封装在一起 — 这是可行的,可以使用类的 ClassLo

一些配置文件可用 sysadmin 进行编辑,但是其中很大一部分(例如 Hibernate 映射)都位于 sysadmin 域之外,这将导致部署漏洞。一个合理的解决方案是将配置文件和代码封装在一起 — 这是可行的,因为 JAR 从根本上来说就是一个 “乔装的” ZIP 文件。 当构建一个 JAR 时,只需要在 Ant 任务或 jar 命令行包括一个配置文件即可。

JAR 也可以包含其他类型的文件,不仅仅是配置文件。例如,如果我的 SpeakEnglish 部件要访问一个属性文件,我可以进行如下设置,如清单 6 所示:

清单 6. 随机响应

package com.tedneward.jars; 
 
import java.util.*; 
 
public class SpeakEnglish 
  implements ISpeak 
{ 
  Properties responses = new Properties(); 
  Random random = new Random(); 
 
  public String sayHello() 
  { 
    // Pick a response at random 
    int which = random.nextInt(5); 
     
    return responses.getProperty("response." + which); 
  } 
}

可以将 responses.properties 放入 JAR 文件,这意味着部署 JAR 文件时至少可以少考虑一个文件。这只需要在 JAR 步骤中包含 responses.properties 文件即可。

当您在 JAR 中存储属性之后,您可能想知道如何将它取回。如果所需要的数据与 JAR 文件在同一位置,正如前面的例子中提到的那样,不需要费心找出 JAR 文件的位置,使用 JarFile 对象就可将其打开。相反,可以使用类的 ClassLoader 找到它,像在 JAR 文件中寻找 “资源” 那样,使用 ClassLoader getResourceAsStream() 方法,如清单 7 所示:

上一页  1 2 3 4 5 6  下一页

Tags:关于 JAR 知道

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接