3

我想在我的 Java 应用程序中消除对配置数据硬编码路径的依赖,我知道使用 ResourceBundle 将帮助我使用类加载器来查找资源。

有人能告诉我如何用适当使用 ResourceBundle 来替换资源的硬编码路径(比如类所需的 .properties 配置数据文件)吗?如果可能的话,简单清晰的例子,谢谢大家。

4

4 回答 4

3

您将需要检查Resource.getBundle(String)。您将类路径上的资源的完全限定名称传递给它以作为属性文件加载。

于 2008-09-30T20:11:11.110 回答
2

在 Java 6 之前,ResourceBundle 通常允许:

Java 6 附带了ResourceBundle.Control类,它为其他资源包打开了大门,例如:

  • XML 文件(参见 Javadoc 中的示例 2)
  • 数据库行

希望这可以帮助。

于 2008-09-30T22:47:39.473 回答
2

您不需要 ResourceBundle。一个简单的 Properties 对象就可以完成这项工作。只需使用类加载器为您的属性文件获取输入流并使用它来加载 de 值。如果您需要处理更复杂的用户配置,请使用首选项 api

亲切的问候

于 2008-10-01T01:35:51.580 回答
0

Resource.getBundle(..) 背后的技巧是使用类加载器。您可以通过 this.getClass().getClassLoader() 访问类路径中的所有内容。Resource.getBundle(..) 是在资源/定位主题中使用它的实用助手。

于 2008-09-30T22:10:18.097 回答