Java属性 - 全局和本地属性

时间:2013-07-12 21:03:02

标签: java eclipse

所以我开始使用Java Properties类来为我的项目设置键值对。我设计项目的方式是,使用配置文件和其他配置文件创建默认属性,以覆盖或添加其他属性。默认配置文件将在我的Eclipse MainFramework项目中,而另一个配置文件将在存储测试的本地项目中。

MainFramework
Validation
TestProject1
TestProject2

在此示例中,MainFramework具有默认配置文件,并且每个TestProject可能有也可能没有自己的本地配置文件。有没有办法通过Java的Properties类获得我想要的功能。

2 个答案:

答案 0 :(得分:1)

java属性对象是一个Hashtable。如果您读取主配置文件的属性,然后将第二个属性文件读入同一对象,则它将覆盖现有属性(如果它们存在于两个位置),或者添加新属性(如果它们尚不存在)。仅在原始文件中找到的属性也将保留。

答案 1 :(得分:0)

如何使用第三方配置库来实现此目的?

Typesafe's config支持使用属性文件,并且可以处理将全局配置与子配置以及许多其他功能合并。

Apache commons configuration还支持属性文件作为配置源和组合不同源的机制。

我个人觉得Typesafe更容易理解和使用,但请看一些例子,看看哪种风格适合你的风格。它们都可以通过maven获得。