java 读取配置文件类

 

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;

import org.apache.log4j.Logger;

public class YEConfiguration {
	
	private static final Logger log = Logger.getLogger(YEConfiguration.class);
		    
	private Map<Object, Object> confMap = new HashMap<Object, Object>() ;
	
	private String configPath ;
	
	
	public YEConfiguration(){
		this.configPath = YEConfiguration.class.getClassLoader().getResource("/").getPath();
		init();
	}
	
	public YEConfiguration(String configPath){
		this.configPath = configPath;
		init();
	}
	
	public void init(){
		//log.info("init !! filepath=["+this.configPath+"]");
		
		Properties pro = new Properties();
		InputStream input = null;
		try {
			//modified by zhangcm on 2016-09-29
		    //input = new FileInputStream(this.configPath); 
			input = getClass().getResourceAsStream(configPath);
			//end by zhangcm
			
			pro.load(input);
			
			for(Object key : pro.keySet()){
				confMap.put(key, pro.get(key));
			}
			
		} catch (FileNotFoundException e) {
			log.error(this.configPath + " is not found!");
			
		} catch (IOException e) {

			log.error(this.configPath + " key/value pair pattern error!!");
		}finally{
			try {
				input.close();
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			pro.clear();
		}
	}
	
	public String get(String key){
		
		return confMap.get(key).toString();
	}
	
	public void set(Object key,Object value){
		
		confMap.put(key, value);
	}
	
}

  

posted @ 2017-04-07 15:59  南修子  阅读(515)  评论(0编辑  收藏  举报