繁体   English   中英

如何使用ResourceBundle来避免Java应用程序中的硬编码配置路径?

[英]How do I use ResourceBundle to avoid hardcoded config paths in Java apps?

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

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

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

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

Java 6附带了ResourceBundle.Control类,它打开了其他ResourceBundles源代码的大门,例如:

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

希望这可以帮助。

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

亲切的问候

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM