通过 log4j,日志信息不仅打印到 console,而且输出到指定文件,根据配置信息;
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
1. startup
如下 demo 所示为使用 logger 的 三种简单方法;
public class LogTest { private Logger logger; @Before public void init() { logger = Logger.getLogger(LogTest.class); logger.removeAllAppenders(); Logger.getRootLogger().removeAllAppenders(); } // 使用默认配置 @Test public void testLogCreate() { BasicConfigurator.configure(); logger.info("using the default configure"); } // 手动构造 Appender @Test public void testAddAppenderWithStream() { logger.addAppender(new ConsoleAppender( new PatternLayout("%p %t %m%n"), ConsoleAppender.SYSTEM_OUT )); logger.info("add appender with stream"); } // Appender 的构造中可以不含输出流 @Test public void testAddAppenderWithoutStream() { logger.addAppender(new ConsoleAppender( new PatternLayout("%p %t %m%n"))); logger.info("add appender without stream"); } }
2. 注意
- 注意区别 log4j 下的 Logger 类和 java Logging 下的 Logger 类;
- import java.util.logging.Logger;