日志:slf4j+log4j+maven配置

代码的日志输出,前前后后折腾了我好几次。

本着会用,快速配置的原则,还是将配置过程记录下来,以便复用。

参考:http://blog.csdn.net/anialy/article/details/8529188

1. 据说slf4j的效率比log4j的效率高,所以大体上采用slf4j来记录日志。

2. slf4j提供了一套api而log4j是具体的实现,所以想使用slf4j则需要具体实现slf4j的api。

  所以,log4j实现 + slf4j api ==> slf4j实现, 此过程采用了适配器模式。

3. 具体配置过程:

1) 添加maven依赖

<dependency>  
    <groupId>org.slf4j</groupId>  
    <artifactId>slf4j-log4j12</artifactId>  
    <version>1.7.2</version>  
</dependency>

会添加如下依赖:

slf4j-api, log4j, slf4j-log4j  ==>  验证第2点。

2) classpath下添加log4j.properties

log4j.properties:

#config root logger
log4j.rootLogger = INFO,system.out
log4j.appender.system.out=org.apache.log4j.ConsoleAppender
log4j.appender.system.out.layout=org.apache.log4j.PatternLayout
log4j.appender.system.out.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n

#config this Project.file logger
log4j.logger.thisProject.file=INFO,thisProject.file.out
log4j.appender.thisProject.file.out=org.apache.log4j.DailyRollingFileAppender
log4j.appender.thisProject.file.out.File=logContentFile.log
log4j.appender.thisProject.file.out.layout=org.apache.log4j.PatternLayout

3) 代码中设置Logger

private static final Logger logger = LoggerFactory.getLogger(clazz);

Done!

清醒时做事,糊涂时读书,大怒时睡觉,独处时思考; 做一个幸福的人,读书,旅行,努力工作,关心身体和心情,成为最好的自己 -- 共勉
原文地址:https://www.cnblogs.com/hello-yz/p/5441661.html