java customConfig.properties文件读取数据

来源:互联网 发布:淘宝不能开网游店铺 编辑:程序博客网 时间:2024/06/13 22:29
package com.sks.db.unit;


import java.io.FileInputStream;
import java.io.IOException;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.Map.Entry;


import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;


public class CustomConfigCache implements ServletContextListener{




public static Map<String, String> configMap = new HashMap<String, String>();


public void contextInitialized(ServletContextEvent sce) {
String webAppRoot = sce.getServletContext().getRealPath("/");
System.setProperty("project.contextPath" , sce.getServletContext().getContextPath()); 
System.setProperty("project.root" , webAppRoot);  
String prosFilePath = this.getClass().getClassLoader().getResource("").getPath()+ "customConfig.properties";
try {
this.getPropertyValuesByFileName(prosFilePath);
} catch (IOException e) {
e.printStackTrace();
}
}


public void getPropertyValuesByFileName(String propertiesFileName) throws IOException {
Properties p = new Properties();// 加载属性文件读取类
FileInputStream in = new FileInputStream(propertiesFileName);// 以流的形式读入属性文件
p.load(in);// 属性文件将该流加入的可被读取的属性中
in.close();// 读完了关闭
Iterator itr = p.entrySet().iterator();
while (itr.hasNext()){
Entry e = (Entry)itr.next();
configMap.put((String)e.getKey(), (String)e.getValue());
}
}
public void getValueByPropertyNames(String propertiesFileName,
List<String> list) throws IOException {
Properties p = new Properties();// 加载属性文件读取类
FileInputStream in = new FileInputStream(propertiesFileName);// 以流的形式读入属性文件
p.load(in);// 属性文件将该流加入的可被读取的属性中
in.close();// 读完了关闭
for (String key : list) {
configMap.put(key, p.getProperty(key));
}
}


/**
* 在服务器停止运行的时候执行
*/
public void contextDestroyed(ServletContextEvent arg0) {


}

}


path = CustomConfigCache.configMap.get("ImageUrl") ;//调用配置文件中ImageUrl    属性值




原创粉丝点击