Commons-configuration-1.6 主要用来读取和设置配置文件.其中常用的包括*.properties和xml.查找相对路径的顺序为先查找project,再查找src
1 package test.common.configuration;
2
3 import java.io.File;
4 import java.util.List;
5
6 import org.apache.commons.configuration.阿Configuration;
7 import org.apache.commons.configuration.ConfigurationException;
8 import org.apache.commons.configuration.PropertiesConfiguration;
9 import org.apache.commons.configuration.XMLConfiguration;
10 import org.apache.commons.lang.ArrayUtils;
11
12 public class ConfigurationTest {
13 public static void main(String[] args) throws ConfigurationException {
14 // 操作 properties文件,直接读取src下的文件
15 Configuration configuration = new PropertiesConfiguration("config.properties");
16 System.out.println(configuration.getString("name"));
17 // 逗号分割
18 String[] arrays = configuration.getStringArray("member");
19 System.out.println(ArrayUtils.toString(arrays));
20 // 保存
21 PropertiesConfiguration c2 = new PropertiesConfiguration("config2.properties");
22 c2.setProperty("member", "phl,hxdg,bj,sanya");
23 c2.save();
24 // 保存到指定文件中--本例直接存在项目目录下
25 c2.save(new File("configbak.properties"));
26 // 当在工程目录下和src目录下,有同名配置文件时,读取工程下的;若工程下无文件,则再去查找src下是否有该文件
27 Configuration cc = new PropertiesConfiguration("configbak.properties");
28 System.out.println(cc.getString("member") + "名字");
29
30 // 操作XML文件
31 XMLConfiguration config = new XMLConfiguration("my.xml");
32 // 获取节点值 路径中不包括根节点名
33 String s1 = config.getString("disks.u-disk");
34 System.out.println(s1);
35 // 获取节点属性值
36 String s2 = config.getString("raid[@name]");
37 System.out.println(s2);
38 // 获得动态属性
39 String s3 = config.getString("disks.soft-disk");
40 System.out.println(s3);
41 // 获取列表
42 List rs = config.getList("raid.r");
43 System.out.println(rs);
44 config.save(new File("c://my.xml"));
45 }
46 }
转载自 http://www.javaeye.com/topic/731399
posted on 2011-01-07 14:55
sw0rd 阅读(940)
评论(0) 编辑 收藏