在没有知道log4j配置文件的情况下,也能打印日志,这是因为log4j在调用Logger.getLogger时,就会自动去classpath下面找配置文件的。具体代码:
package com.coderdream.log4j;
import org.apache.log4j.Logger;
import org.apache.log4j.helpers.LogLog;
public class HelloLog4j {
private static Logger logger;
static{
LogLog.setInternalDebugging(true);
logger = Logger.getLogger(HelloLog4j.class);
}
/**
* @param args
*/
public static void main(String[] args) {
// System.out.println("This is println message.");
// 记录debug级别的信�?
logger.debug("This is debug message.");
// 记录info级别的信�?
logger.info("This is info message.");
// 记录error级别的信�?
logger.error("This is error message.");
}
}
LogLog.setInternalDebugging(true); 打开这个开关,可以看到log4j内部的初始化日志。方便理解。
输出结果:
具体实现类:
___________ ______________
|LogManager|----->|OptionConverter |
参考: