一。log4j复习
log4j常用的五种级别:
debug:调试级别,适用于开发阶段。
info:运行信息,适用于测试或者运行阶段
warn:警告信息
error:错误消息
fatal:系统错误消息
info以及之后的三种都适用于测试和运行阶段。
控制日志输出级别是通过log4j配置文件的
log4j.rootLogger
定义的,这个定义是全局的。
次序:fatal > error > warn > info > debug
所有全局控制中设置的级别以下的所有日志都不会打印,比如全局控制中设置了info级别,那么debug级别的日志将不会被输出,设置了fatal,前面4个都不会打印。
二。MyBatis应用
1.首先当然是要添加log4j的Jar包吧,我这是用maven构建的项目,所以直接贴依赖了:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.7</version>
</dependency>
2.添加log4j配置文件
在src/main/java路径下新建个 log4j.properties文件,文件内容:
### set log levels 全局配置###
log4j.rootLogger = debug , output
#设置了级别之后需要绑定一个名字,例如这个output,可以随意取,在下面使用:
### 输出到控制台 ###
log4j.appender.output= org.apache.log4j.ConsoleAppender
#设置输出目标, System.out就是控制台了
log4j.appender.output.Target = System.out
log4j.appender.output.layout = org.apache.log4j.PatternLayout
# 设置输出格式
log4j.appender.output.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
因为这里只输出到控制台,配置一个即可。至此就配置好了,只要运行到MyBatis的部分,就有日志输出到控制台,写个小方法测试一下:
输出结果:
输出格式:
%-d{yyyy-MM-dd HH:mm:ss}:日期
[
%t:%r
]:main方法:进程号
[
%p
]:级别
%m%n:输出结果
手动添加日志内容:
想输出哪个级别的日志,就调用对应的方法,受全局控制影响,输出结果:
可以看到查询结果也被输出到日志中了。