【文章出处】
http://wangxin0072000.iteye.com/blog/186009
Apache Commons-configuration 学习笔记
1 如果要使用configuration这个包,首先要保证使用JDK1.2以上,还要引入如下jar包
commons-beanutils
commons-lang
commons-logging
commons-collections
commons-digester
commons-codec
commons-jxpath
2 commons-configuration最新的版本是1.5,最主要的作用是读取资源文件,每一种文件格式都有一个对应的类,如下
properties文件--PropertiesConfiguration类
xml文件--XMLConfiguration
.ini文件--INIConfiguration
.plist文件--PropertyListConfiguration
还可以从JNDI中读取properties--JNDIConfiguration
当然还可以使用system的properties--SystemConfiguration
等等...
3 上面已经对它做了基本的介绍,下面看看这个包怎么用吧
比如我们要读一个properties文件:在classpath下面建立目录te,之后在te下面建立
test.properties
ip=127.0.0.1
port=8080
id=111
application.name = Killer App
application.version = 1.6.2
application.title = ${application.name} ${application.version}
keys=cn,com,org,uk,edu,jp,hk
//注意路径默认指向的是classpath的根目录
Configuration config = new PropertiesConfiguration("te/test.properties");
String ip=config.getString("ip");
int port=config.getInt("port");
String title=config.getString("application.title");
//再举个Configuration的比较实用的方法吧,在读取配置文件的时候有可能这个键值对应的值为空,那么在下面这个方法中
//你就可以为它设置默认值。比如下面这个例子就会在test.properties这个文件中找id的值,如果找不到就会给id设置值为123
//这样就保证了java的包装类不会返回空值。虽然功能很简单,但是很方便很实用。
Integer id=config.getInteger("id", new Integer(123));
//如果在properties 文件中有如下属性keys=cn,com,org,uk,edu,jp,hk
//可以实用下面的方式读取:
String[] keys1=config.getStringArray("keys");
List keys2=config.getList("keys");
首先要把这个文件读到程序中,我们可以用上面的类,所有的读取文件的类都 继承自AbstractConfiguration类,
而这个类实现了Configuration接口,如果我们只有比较简单的需求,那么可以直接向上转型为Configuration类型,如果向上
转型为AbstractConfiguration类,那么可以做一些配置工作。
比如刚刚看到的 keys=cn,com,org,uk,edu,jp,hk这个例子中如果是keys=cn/com/org/uk/edu/jp/hk
那么如果还按照原来的方式读取,读到的将是"cn/com/org/uk/edu/jp/hk"这个字符串,所以要先改变分割符之后在读
即
AbstractConfiguration.setDefaultListDelimiter('/');
Configuration config = new PropertiesConfiguration("te/Vasp.properties");
String[] keys=config.getStringArray("keys");
List key2=config.getList("keys");
如果你看它的源码,你会在 AbstractConfiguration这个类中找到:
private static char defaultListDelimiter = ',';
如果你确定要解析的文件是properties
那么你完全可以使用
PropertiesConfiguration config = new PropertiesConfiguration("tt/t.properties");
代替
Configuration config = new PropertiesConfiguration("tt/t.properties");
这么写似乎不符合面向接口编程,但是它可以使用PropertiseConfiguration中特殊的方法。
比如,你如果你想修改propertise文件,那么可以这样:
config.setProperty("id", "sss");
config.save();
当然,你还可以使用isAutoSave这个方法:
config.isAutoSave();
config.setProperty("tttt", "sss");
properties这个类还支持文件的继承,比如在test.properties这个文件中有
include = test1.properties
同时在classpath中又有test1.properties这个文件,那么PropertiesConfiguration类就可以
从test1.properties文件中读取信息。
分享到:
相关推荐
Maven坐标:org.apache.commons:commons-configuration2:2.1.1; 标签:apache、commons、configuration2、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档...
commons-configuration2-2.0.jar Apache commons-configuration 读取配置文件
Maven坐标:org.apache.commons:commons-configuration2:2.1.1; 标签:apache、commons、configuration2、中英对照文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览...
在给定的"commons-configuration-1.10"版本中,我们可以深入探讨以下几个核心知识点: 1. **配置文件支持**:Commons Configuration 支持多种格式的配置文件,包括XML、INI、Properties和HOCON(Hadoop配置格式)。...
Apache Commons Configuration 是一个开源的Java库,用于处理配置文件。这个库提供了一种灵活的方式来管理和访问应用程序的配置参数,无论是从传统的属性文件、XML文件、系统属性还是其他数据源。在"Apache的Commons...
`commons-configuration-1.10.jar`是Apache Commons Configuration库的一个稳定版本,发布于2013年,它为开发者提供了丰富的API来处理配置文件。此版本包含了对多种配置源的支持,包括传统的Java属性文件、XML文件...
apache-sanselan-incubating-0.97-bin bcel-5.2 commons-beanutils-1.9.2-bin commons-chain-1.2-bin commons-cli-1.3.1-bin commons-codec-1.10-bin commons-collections4-4.0-bin commons-configuration-1.10-bin...
Apache Commons是一个非常有用的工具包,解决各种实际的通用问题。(附件中提供了该工具包的jar包,及源文件以供研究) BeanUtils Commons-BeanUtils 提供对 Java 反射和自省API的包装 Betwixt Betwixt提供将 ...
3.2.1-src.zip commons-configuration-1.5-src.zip commons-configuration-1.5.zip commons-daemon-1.0.1.tar.gz commons-dbcp-1.2.2-src.zip commons-dbcp-1.2.2.zip commons-dbutils-1.1-src....
- `commons-configuration-1.9-bin.zip` 包含了编译后的二进制库,通常包含JAR文件,这些是运行时需要引入的库文件,用于在项目中使用Commons Configuration。 - `commons-configuration-1.9-src.zip` 则包含了...
Apache Commons Configuration 是一个 Java 库,它为处理各种类型的配置文件和提供了一种灵活的 API。这个库使得在 Java 应用程序中读取、写入和管理配置参数变得非常简单。下面我们将深入探讨 Commons ...
httpcomponents-client source ,Document( commons-beanutils commons-io commons-fileupload commons-lang,commons-math,commons-validator,commons-dbutils,commons-dbcp,commons-configuration)
Apache Commons Configuration 是一个Java库,专门用于处理各种配置文件和属性。这个库为开发者提供了方便的方式来管理和解析配置数据,无论是简单的键值对格式(如.properties文件)还是更复杂的XML文件。"commons-...
`commons-configuration-1.7`是该库的一个版本,它包含了源代码,允许开发者深入理解其内部工作原理并进行定制或扩展。 1. **配置资源类型**: - XML配置:Apache Commons Configuration 支持读取和解析XML格式的...
这里提到的三个JAR文件——`commons-beanutils.jar`、`commons-collections-3.1.jar`和`commons-pool-1.2.jar`,都是Apache Commons项目的一部分,分别涉及Bean操作、集合操作和对象池化。 **1. `commons-beanutils...
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
离线安装包,测试可用
本篇文章将深入探讨两种加载配置文件的方法——使用Java内置的`Properties`类和`InputStream`,以及第三方库Apache Commons Configuration。我们将讨论每种方法的优缺点,并通过实例来演示如何使用它们。 首先,让...
6. **commons-configuration-1.6.jar**: 提供了灵活的配置管理机制,支持从多种来源(如 XML、属性文件、系统环境变量等)读取配置信息,使得应用的配置更加动态和易于管理。 7. **commons-net-3.0.1.jar**: 包含了...