使用commons configuration管理配置文件
来源:互联网 发布:floyd warshall java 编辑:程序博客网 时间:2024/04/28 11:13
Commons Configuration是一个java应用程序的配置管理类库。可以从properties或者xml文件中加载软件的配置信息,用来构建支撑软件运 行的基础环境。在一些配置文件较多较的复杂的情况下,使用该配置工具比较可以简化配置文件的解析和管理。也提高了开发效率和软件的可维护性。
官方主页:http://commons.apache.org/configuration/
它目前支持的配置文件格式有:
Properties files
XML documents
Windows INI files
Property list files (plist)
JNDI
JDBC Datasource
System properties
Applet parameters
Servlet parameters
我使用的是目前最新版本1.9,以调用 Properties格式的文件为例,使用方法如下:
基本用法:
1.加载jar包,我使用maven自动加载,pom.xml配置如下:
<dependency><groupId>commons-configuration</groupId><artifactId>commons-configuration</artifactId><version>1.9</version></dependency><!-- commons-configuration 自动加载的是2.1的版本,编译时会报错,所以再加上这个 --><dependency><groupId>commons-lang</groupId><artifactId>commons-lang</artifactId><version>2.6</version></dependency>
common-lang这个包要用新版的,如果不写这个依赖,commons-configuration会下载一个2.1旧版,导致编译出错
2.java代码:
PropertiesConfiguration config = new PropertiesConfiguration(“/database.properties”);String userName = config.getString("name");
除了getString()方法外,还有getBoolean,getDouble,getInteger等不同返回类型的方法可以调用。
进阶用法:
一个项目有会有多个配置文件,这时有个统一的配置文件管理类就很有必要了,我写了一个简单的,大家可以参考下,有不妥的用法也请指出来
1.java类
package com.xxx.xxx.util;import java.util.HashMap;import java.util.Map;import org.apache.commons.configuration.ConfigurationException;import org.apache.commons.configuration.PropertiesConfiguration;/** * <p> * 读取配置文件类 * </p> * <p> * 根据配置文件名和属性key返回属性内容,configUtil.get(configFile, property); * </p> * @author shengzhi.rensz * */public class configUtil {private static configUtil initor = new configUtil(); private static Map<String, Object> configMap = new HashMap<String, Object>(); private configUtil() {} /** * 获取内容 * @param configFile * @param property * @return */ public static String get(String configFile, String property) { if(!configMap.containsKey(configFile)) { initor.initConfig(configFile); } PropertiesConfiguration config = (PropertiesConfiguration) configMap.get(configFile); String value = config.getString(property); //TODO LOG return value; } /** * 载入配置文件,初始化后加入map * @param configFile */ private synchronized void initConfig(String configFile) { try { PropertiesConfiguration config = new PropertiesConfiguration(configFile);configMap.put(configFile, config);} catch (ConfigurationException e) {e.printStackTrace();} } }
2.调用方法
configUtil.get("/common/velocity.properties", "input.encoding");
0 0
- 使用commons configuration管理配置文件
- java学习笔记6 - 使用commons configuration管理配置文件
- 使用Apache commons-configuration读取配置文件
- 配置文件读取类:commons-configuration使用
- commons configuration 自动 reload 配置文件
- org.apache.commons.configuration.Configuration 配置文件
- 使用Commons Configuration
- Apache Commons Configuration 使用
- commons-configuration使用
- Commons Configuration使用
- commons-configuration使用介绍
- commons-configuration 使用
- [j2ee]Apache Commons Configuration 使用
- Apache Commons configuration使用入门
- Apache Commons Configuration使用入门
- Apache Commons Configuration使用入门
- Apache Commons Configuration使用入门
- Apache 项目 之 commons-configuration-1.10.jar 使用 properties配置文件时的编码设置
- Java设计模式之代理模式(Proxy)
- NSArray根据字符串长度排序
- 在Linux下某一个文件夹下,如何查找包含某一个字符串的文件
- django zip
- HackThisSite/Basic 7解决方案
- 使用commons configuration管理配置文件
- 汇编伪指令
- vc6 得到执行程序所在路径
- 自适应网页设计(Responsive Web Design)
- Android 异步加载网络图片并缓存到本地
- Visual Studio 跨平台App開發 - Hello Xamarin!
- linux下xargs命令用法详解
- Ubuntu 12.04中文输入法的安装
- 谷歌眼镜设计规范之活动卡片