mybatis-config.xml配置
<settings>
<!-- 设置log4j控制台输出sql等信息 -->
<!-- <setting name="lazyLoadingEnabled" value="false" /> -->
<setting name="logImpl" value="LOG4J" /></settings>
log4j.properties配置
###set log levels###
log4j.rootLogger=INFO,stdout
### \u8F93\u51FA\u5230\u63A7\u5236\u53F0 ###
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=%5p %d %c:%L - %m%n### show sql ###
###log4j.logger.org.mybatis=debug###
###log4j.logger.com.ibatis=debug###
###log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=debug###
###log4j.logger.com.ibatis.common.jdbc.ScriptRunner=debug###
###log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=debug###
###log4j.logger.java.sql.Connection=debug###
###log4j.logger.java.sql.Statement=debug###
###log4j.logger.java.sql.PreparedStatement=debug###
log4j.logger.org.shawn.study.springmvc.modules.demo.mapper=debug
因为我们一般设置log4j都是info级别的log4j.rootLogger=info, stdout
,而log4j支持对各个模块设置日志级别,所以只需要对打印sql的那一些类设置debug级别就可以了,配置如下:
在log4j.properties中添加下面一行
log4j.logger.org.shawn.study.springmvc.modules.demo.mapper=debug
语法解释:log4j.logger.[package].[class]=[level],[appender]
[package]
包路径,如上面的 org.shawn.study.springmvc.modules.demo.mapper 包
[class]
类名,可不填
[level]
日志级别, debug
[appender]
日志输出的地址,可不填
我的sql调用类包路径为 org.shawn.study.springmvc.modules.demo.mapper
这样就可以把org.shawn.study.springmvc.modules.demo.mapper
包下的所有类里的sql打印出来
最后测试结果:
DEBUG 2018-10-30 11:24:19,274 org.shawn.study.springmvc.modules.demo.mapper.UserMapper.getUser:159 - ==> Preparing: select id,user_name,password,sex,mobile,tel,email,note from t_user where id = ?
DEBUG 2018-10-30 11:24:19,298 org.shawn.study.springmvc.modules.demo.mapper.UserMapper.getUser:159 - ==> Parameters: 1(Long)
DEBUG 2018-10-30 11:24:19,319 org.shawn.study.springmvc.modules.demo.mapper.UserMapper.getUser:159 - <== Total: 1
INFO 2018-10-30 11:24:19,320 org.shawn.study.springmvc.modules.demo.test.DemoMain:57 - 获取用户sex:男
INFO 2018-10-30 11:24:19,320 org.shawn.study.springmvc.modules.demo.test.DemoMain:58 - 获取用户:User [id=1, userName=张三, password=123456, sex=MALE, mobile=13850329999, tel=0755-88888888, email=zhangsan@163.com, note=note...]
可以参考Mybatis参考文档,里面内容更加细致!