1.文件位置,如下图所示:
文件中加入log4j配置文件的监听器及初始化参数中配置文件路径,如下图所示:
3.在mybatis的配置文件中加入如下配置,
4.文件解析
#log4j基本配置
=DEBUG,console,file
#设置输出控制台信息
=.
=
=DEBUG #控制台只会打印INFO级别及以上的日志信息
= .
=%c-%m%n
#设置输出文件信息
= .
=log/ #日志文件路径,在应用下的log/文件中
=true #追加
=100mb #达到100m后产生一个新文件
=ERROR #只会写ERROR级别及以上的日志信息
=. #布局器
=%c-%m%n #布局器格式
解析:1.=[level],target1,target2,...
第一个参数level表示日志级别,由低到高为ALL,TRACE,DEBUG,INFO,WARN,FATAL,OFF,可以不设置,默认为 INFO, 这个日志级别相当于应用程序中所有类的日志信息的总开关,设置这个level后,默认只会打印大于等于这个级别的日志信息
第二、三个参数为日志输出位置,可以有控制台,文件,邮件等
2.
Threshold属性可以设定自己可以介绍的日志级别,如:=DEBUG ,控制台只会打印INFO级别及以上的日志信息
#########配置只打印mybatis的SQL信息###################
=DEBUG,console #打印mybatis的SQL信息到控制台,这里的console可以换为file等
=false
# log4j的additivity属性: 表示子logger是否要在父logger的appender中输出日志,若是additivity设为false,则子Logger只会在自己的appender里输出,而不会在父Logger的appender里输出。
我的Mapper接口和映射文件在包下,这里子logger可以为特定的包或者类打开日志开关,会覆盖根logger设置的日志级别