java customConfig.properties文件讀取數據

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    屬性值




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章