这里作个记录,方便以后查阅,其实写代码的时候写好打印日志,便于之后查找问题出在哪里了,不然的话在找bug的时候你根本不知道问题出在哪里了,要一步一步去调,很麻烦,有了logger你就可以快速的找到程序运行到哪里出现问题了。
import org.apache.log4j.BasicConfigurator;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
public class TestLog4j {
private static Logger logger = Logger.getLogger(TestLog4j.class);
public static void main(String[] a) throws InterruptedException {
BasicConfigurator.configure();
logger.setLevel(Level.DEBUG); //设置显示级别
logger.trace("跟踪信息"); //所以这里是不会在控制台打印的
logger.debug("调试信息");
logger.info("输出信息");
Thread.sleep(1000);
logger.warn("警告信息");
logger.error("错误信息");
logger.fatal("致命信息");
}
}
输出结果如下:
[DEBUG] 15:05:22 TestLog4j - 调试信息
0 [main] DEBUG db.migration.TestLog4j - 调试信息
[ INFO] 15:05:22 TestLog4j - 输出信息
1 [main] INFO db.migration.TestLog4j - 输出信息
[ WARN] 15:05:23 TestLog4j - 警告信息
1002 [main] WARN db.migration.TestLog4j - 警告信息
[ERROR] 15:05:23 TestLog4j - 错误信息
1002 [main] ERROR db.migration.TestLog4j - 错误信息
[FATAL] 15:05:23 TestLog4j - 致命信息
1002 [main] FATAL db.migration.TestLog4j - 致命信息
上面的Thread.sleep(1000)就是便于大家观察一下时间的变化。
还可以通过log4j.properties和log4j.xml的方式来配置。