2008-09-30 82 views
3

我想消除Java应用程序中配置数据的硬编码路径的依赖关系,我知道使用ResourceBundle可以帮助我使用类加载器来查找资源。如何使用ResourceBundle避免Java应用程序中的硬编码配置路径?

谁能告诉我我怎么会更换到资源的硬编码路径(比如一类需要的.properties配置数据文件)适当使用资源包的?如果可能,简单明了的例子,谢谢大家。

回答

2

到Java 6之前,ResourceBundle中通常允许:

爪哇6附带ResourceBundle.Control类,它打开了其他ResourceBundles来源的大门,例如:

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

希望这有助于。

0

Resource.getBundle(..)背后的诀窍是使用类加载器。您可以通过this.getClass()。getClassLoader()来加载类路径中的所有内容。 Resource.getBundle(..)是在资源/本地化主题中使用它的实用帮助程序。

2

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

亲切的问候