第一天接触程序就敲出的命令:System.out.print("Hello World"),
后来慢慢的接触到了 log4j,至今为止也一直在使用。
而且在项目中也常常禁止使用 System.out 的方式输出日志,这是为什么呢?
今天做了一个测试:
System.out. 输出的日志只打印在控制台,而没有存储到一个日志文件中,如果我们在生产环境这样打印出来毫无意义。
但我们的 log4j 是一个实实在在的日志解决方案,通过配置文件,打印出我们需要的日志,便于我们分析、追踪日志信息。后续有时间我会补一篇关于日志的项目,敬请期待。。。
如果既想使用System.out 还想打印出日志,下面有一个简单的方法,提供参考:
@Test
public void testLog() throws FileNotFoundException {
System.out.println("这是 System.out 日志");//打印在控制台
//System.setOut(new PrintStream(new File("C:/projects/demo/trunk/logs/outLog.txt")));
//有朋友发现多次输出日志会覆盖之前日志,特此修正
System.setOut(new PrintStream(new FileOutputStream("C:/projects/demo/dxtp_20181120/trunk/logs/outLog.txt",true),true));
System.out.println("这是 System.out 日志");//打印在日志文件中
log.info("这是log日志");
logBussiness.info("这是 logBussiness日志");
logDb.info("这是logDb日志");
logFactory.info("这是logFactory日志");
}
日志查看如下: