4

有人可以阐明什么是通用配置(apache 通用配置)吗?如果有人可以用一些用例来解释它,那将会很有帮助。

也非常感谢我可以从中获得一些有用信息的任何链接(谷歌除外)。

4

2 回答 2

11

Apache Commons Configuration 最著名的是该库能够让您使用配置文件,即在.properties文件中解析。

例如:

color=Green
person=John

此属性文件可能驻留在类路径或硬目录中。使用 Apache Commons Configurations,您可以轻松地在 parse 中进行解析,并获取其键所代表的值。

请参阅此快速教程

编辑

但为什么要配置或 Apache Commons 配置?

有时,您不希望将特定值硬编码到要编译的代码中。例如,您可能有一个应用程序变量Background_COLOR ,该变量的值控制您的应用程序背景的颜色您将如何将其存储在您的应用程序中?

你可以这样做:

public static final String BACKGROUND_COLOR = "Green";

但是,如果要将背景颜色更改为“红色”,则必须更改上面的代码,将其重新编译为:

public static final String BACKGROUND_COLOR = "Red";

如果您不想更改代码,重新编译以更改应用程序的背景怎么办?是的,您可以将此值存储到一个名为 的文本文件system.properties中,或者实际上是任何名称和扩展名。

例如,您可以将其存储在 system.properties 中:

background_color=Green

但是你如何阅读这个文本文件?(以属性格式保存,key=value)您想进入低级文件和 IO 以读取这些值吗?您可能不会,您需要一个成熟且成熟的图书馆来为您这样做。

为此,您可以使用 Apache Commons 配置。该库已准备好用于读取配置文件,例如属性文件。

使用 Apache Commons 配置,这里是读取上述属性文件并提取 key 值的代码background_color

public static void main(String [] args){
  Configuration config = new PropertiesConfiguration("system.properties");
  String backColor = config.getString("background_color");
  System.out.println(backColor); // this will give you green
}

希望这有助于您的理解。:)

于 2012-03-12T05:36:10.373 回答
1

Apache Commons Configuration 是一个简化管理应用程序配置属性的 java 库。它允许您从不同的配置源收集属性,如属性文件、XML 文件、Java 系统属性、环境变量等。它还允许您通过配置源的设置首选项链覆盖属性。参考这篇文章

于 2014-11-21T11:01:47.087 回答