欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JAVA中的Configuration类详解

程序员文章站 2023-12-14 14:07:52
本文主要研究的是java中的configuration类的用法,涉及maven自动加载,pom.xml配置和简单的java代码,具体如下。 properties文件是ja...

本文主要研究的是java中的configuration类的用法,涉及maven自动加载,pom.xml配置和简单的java代码,具体如下。

properties文件是java平台默认的配置文件格式,其优点是格式清晰,简单易懂,使用commons-configuration读取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"); 
public static void readproperties() throws configurationexception { 
    propertiesconfiguration pcfg = new propertiesconfiguration("config/cfg.properties"); 
    system.out.println(pcfg.getstring("platform.jre")); 
  } 

注意,这里的路径一定要搞清楚,配置文件是放在config文件夹中的;

总结

以上就是本文关于java中的configuration类详解的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

上一篇:

下一篇: