log4j的配置文件详解之Spring结合Mybatis在控制台打印sql语句

1.log4j.propeties文件位置,如下图所示:

         log4j的配置文件详解之Spring结合Mybatis在控制台打印sql语句_第1张图片

2.web.xml文件中加入log4j配置文件的监听器及初始化参数中配置文件路径,如下图所示:

log4j的配置文件详解之Spring结合Mybatis在控制台打印sql语句_第2张图片

3.在mybatis的配置文件中加入如下配置,

          

4.log4j.properties文件解析

#log4j基本配置
log4j.rootLogger=DEBUG,console,file
#设置输出控制台信息
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.Target = System.out
log4j.appender.console.Threshold=DEBUG     #控制台只会打印INFO级别及以上的日志信息
log4j.appender.console.layout = org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%c-%m%n
#设置输出文件信息
log4j.appender.file = org.apache.log4j.RollingFileAppender
log4j.appender.file.File=log/mybatis.log     #日志文件路径,在应用下的log/mybatis.log文件中
log4j.appender.file.Append=true   #追加
log4j.appender.file.MaxFileSize=100mb    #达到100m后产生一个新文件
log4j.appender.file.Threshold=ERROR      #只会写ERROR级别及以上的日志信息
log4j.appender.file.layout=org.apache.log4j.PatternLayout     #布局器
log4j.appender.file.layout.ConversionPattern=%c-%m%n   #布局器格式

解析:1.log4j.rootLogger=[level],target1,target2,...

         第一个参数level表示日志级别,由低到高为ALL,TRACE,DEBUG,INFO,WARN,FATAL,OFF,可以不设置,默认为 INFO,   这个日志级别相当于应用程序中所有类的日志信息的总开关,设置这个level后,默认只会打印大于等于这个级别的日志信息
         第二、三个参数为日志输出位置,可以有控制台,文件,邮件等

           2.log4j.appender.console.Threshold

        Threshold属性可以设定自己可以介绍的日志级别,如:log4j.appender.console.Threshold=DEBUG  ,控制台只会打印INFO级别及以上的日志信息

#########配置只打印mybatis的SQL信息###################

log4j.logger.com.mapper=DEBUG,console   #打印mybatis的SQL信息到控制台,这里的console可以换为file等

log4j.additivity.com.mapper=false            

# log4j的additivity属性: 表示子logger是否要在父logger的appender中输出日志,若是additivity设为false,则子Logger只会在自己的appender里输出,而不会在父Logger的appender里输出。

           我的Mapper接口和映射文件在com.mapper包下,这里log4j.logger子logger可以为特定的包或者类打开日志开关,会覆盖根logger设置的日志级别

 

你可能感兴趣的:(log4j的配置文件详解之Spring结合Mybatis在控制台打印sql语句)