/**
* IPMTPP Config.java
* 2013-5-29
*/
package cn.ipanel.msg.util.common;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.URL;
import java.util.Enumeration;
import java.util.Properties;

import com.ipanel.webapp.framework.util.Log;

public class Log4jConfig {

final static String CONFIG_FILE = "log4j.properties";
private static final String TAG = "Log4jConfig";
static Properties props = new Properties();
static URL url=null;
static {

url = Log4jConfig.class.getClassLoader().getResource(CONFIG_FILE);


}

public synchronized static String getConfig(String name, String defaultValue) {
try {
props.load(new FileInputStream(new File(url.getFile())));
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return props.getProperty(name, defaultValue);
}

public synchronized static String getConfig(String name) {
return getConfig(name, null);
}

public static String getRootLogger() {
return getConfig("log4j.rootLogger");
}

public static void setRootLogger(String type) throws Exception {
StringBuffer buffer = new StringBuffer();

props.load(new FileInputStream(new File(url.getFile())));
Enumeration en = props.propertyNames(); // 得到配置文件的名字
while (en.hasMoreElements()) {
String strKey = (String) en.nextElement();
String strValue = props.getProperty(strKey);
Log.i(TAG, strKey + "=" + strValue);
if ("log4j.rootLogger".equals(strKey)) {

buffer.append("log4j.rootLogger").append("=").append((type))
.append("\n");
} else {
buffer.append(strKey).append("=").append(strValue).append("\n");
;
}

}

FileOutputStream fout = null;
try {

fout = new FileOutputStream(new File(url.getFile()));
fout.write(buffer.toString().getBytes());
} catch (Exception e) {
throw e;
} finally {
if (fout != null)
try {
fout.close();
fout = null;
} catch (IOException e) {
throw e;
}
}
}

 


}

posted on 2017-11-23 18:27  草莓王子  阅读(676)  评论(0编辑  收藏  举报