SpirngBoot使用log4j打印mybatis日志
springBoot默认使用logback来进行日期管理, 且依赖会在引入
springboot-starter-web
后自动引入,需要先在springboot-starter-web
中logback
依赖, 后引入log4j进行日志管理SpringBoot版本:1.5.9.RELEASE Log4j版本:1.3.8.RELEASE
引入依赖
<!--排除logback依赖包-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<!--log4j依赖包-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j</artifactId>
<version>1.3.8.RELEASE</version>
</dependency>
配置日志输出
- 只需要打印sql语句以及条件
mybatis.configuration.log-impl: org.apache.ibatis.logging.log4j.Log4jImpl
- 需要打印sql语句,条件以及结果集
mybatis.configuration.log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
Tips
此段相当于mybatis.xml的如下配置
<configuration>
<settings>
<setting name="logImpl" value="STDOUT_LOGGING"/>
</settings>
</configuration>
配置log4j.properties
# Output pattern : date [thread] priority category - message
log4j.rootLogger=Info,RollingFile,Console
#Console
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
#log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n
log4j.appender.Console.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%-5p:%X{usercode}] %c - %m%n
#RollingFile
log4j.appender.RollingFile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.RollingFile.File=${catalina.base}/logs/customer.log
log4j.appender.RollingFile.layout=org.apache.log4j.PatternLayout
#log4j.appender.RollingFile.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss,SSS} [%c:%L]-[%-5p] %m%n%n
log4j.appender.RollingFile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%-5p:%X{usercode}] %c - %m%n
#Project defalult level
log4j.logger.cn.com.citicpru=Info
log4j.logger.com.test.framework.sessionSharingPlatform=INFO
log4j.logger.org.springframework=Info
log4j.logger.com.opensymphony.xwork2=Info
log4j.logger.org.apache.commons=Info
log4j.logger.java.sql=OFF
log4j.logger.java.sql.Connection = DEBUG
log4j.logger.java.sql.Statement = DEBUG
log4j.logger.java.sql.PreparedStatement = DEBUG
log4j.logger.java.sql.ResultSet = OFF
log4j.logger.cn.com.test.mapper=DEBUG
log4j.logger.net.sourceforge.jdbclogger=Info