在代码中一般读取src下的配置文件
读取src路径下的log4j.properties和message.properties
读取message.properties文件并将properties中的键值对转为map
PropertiesServlet.class.getClassLoader().getResourceAsStream("/message.properties");返回值是一个InputStream
/**
* 根据java标准properties文件读取信息,并赋值为一个 HashMap
* @param path
* @param map
* @return
* @throws Exception
*/
public final Map fileToMap(Map map) throws Exception{
if(map == null){
map = new HashMap();
}
InputStream isr = null;
Reader r = null;
try {
isr = PropertiesServlet.class.getClassLoader().getResourceAsStream("/message.properties");
r = new InputStreamReader(isr, "UTF-8");
Properties props = new Properties();//使用..Properties
props.load(r);
Set> entrySet = props.entrySet();
for (Entry entry : entrySet) {
if (!entry.getKey().toString().startsWith("#")) {
map.put(((String) entry.getKey()).trim(), ((String) entry
.getValue()).trim());
}
}
return map;
} finally {
if (r != null) {
try {
r.close();
} catch (IOException e) {
HLogger.error(e);
}
}
if (isr != null) {
try {
isr.close();
} catch (Exception e2) {
HLogger.error(e2);
}
}
}
}
LogInit.class.getClassLoader().getResource("//").getPath();返回的是一个String类型的路径
public void init() throws ServletException {
// TODO Auto-generated method stub
super.init();
PropertyConfigurator.configure(LogInit.class.getClassLoader().getResource("//").getPath()+"//log4j-hrp.properties");
}