1、前言
在项目调试中,常常会发现获取数据库的数据。为了找原因,是否是SQL异常,我们就需要根据执行的SQL判断是不是有问题,从而解决问题。了解了一下log4j的配置,这里记录下来。
2、log4J的依赖
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.6.4</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.6.4</version>
</dependency>
3、log4j的基本配置说明
### set log levels ###
#定义默认的级别,变量
log4j.rootLogger = info,stdout,file
### 输出到控制台 ###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
#正常输出
log4j.appender.stdout.Target = System.out
#日志布局方式
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
#日志的正则方式
log4j.appender.stdout.layout.ConversionPattern = %d{ABSOLUTE} %5p %c{ 1 }:%L - %m%n
### 输出到日志文件 ###
log4j.appender.file = org.apache.log4j.DailyRollingFileAppender
#指定文件的位置
log4j.appender.file.File = logs/log.log
#默认值是true,即将消息增加到指定文件中,false指将消息覆盖指定的文件内容
log4j.appender.file.Append = true
## 输出DEBUG级别以上的日志
log4j.appender.file.Threshold = DEBUG
#日志布局方式
log4j.appender.file.layout = org.apache.log4j.PatternLayout
#日志的正则方式
log4j.appender.file.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
###打印mybatis的SQL###
#log4j.logger.包名=debug,SQL的输出级别是debug级别
log4j.logger.ws.spring.mybatis.mapper=debug
4、log4j的其它显示SQL的配置
<!-- ①直接将log4j.rootLogger的默认级别改成debug即可,但是这样打印的信息会比较多。-->
log4j.rootLogger = debug
<!--
②在mybatis中的配置文件中配置:mybatis-config.xml
注意:这里配置之后,使用的是mybatis中内嵌的日志,和自己的配置的log4j无关。
-->
<setting name="logImpl" value="STDOUT_LOGGING"/>
详细参考:http://blog.youkuaiyun.com/azheng270/article/details/2173430/