mybatis下使用log4j打印sql语句和执行结果
2014-12-09 17:06
615 查看
本来以为很简单的问题,结果自己搞了半天还是不行;然后google,baidu,搜出来各种方法,有加slf4j*.jar的,有说去掉slf4j*.jar,还有说要配置mybatis.cfg.xml的,有的甚至一眼看上去就是不可能成功的.试了这么多,结果没有一个好用的.可能是版本不一致的问题?但是里面也注明是适用于什么版本的.具体原因就不知道了.
mybatis版本:3.2.3
log4j:1.2.17
后来参考了官方文档,才知道,其实只要配置mapper接口类或者配置文件中mapper的路径为debug就可以了.具体可参考这里.
里面还说明了,如果要打印sql语句的执行结果,需要设置为trace级别.
附上可以正常打印sql及运行结果的配置:
log4j.properties:
mapper的配置文件:
打印结果:
另一文章http://blog.csdn.net/isea533/article/details/22931341
mybatis版本:3.2.3
log4j:1.2.17
后来参考了官方文档,才知道,其实只要配置mapper接口类或者配置文件中mapper的路径为debug就可以了.具体可参考
里面还说明了,如果要打印sql语句的执行结果,需要设置为trace级别.
附上可以正常打印sql及运行结果的配置:
log4j.properties:
log4j.rootLogger=info,stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d%p[%c]-%m%n
#打印sql语句:debug;执行结果:trace
##指定mapper配置文件中的namespace
log4j.logger.mapperNS=TRACE
mapper的配置文件:
<mappernamespace="mapperNS.user">
<selectid="selectUser"parameterType="int"resultType="User">
<![CDATA[
select*fromuserwhereid=#{id}
]]>
</select>
</mapper>
打印结果:
2013-12-2713:16:56,335DEBUG[mapperNS.user.selectUser]-oooUsingConnection[com.mysql.jdbc.JDBC4Connection@2d8eef25]
2013-12-2713:16:56,344DEBUG[mapperNS.user.selectUser]-==>Preparing:select*fromuserwhereid=?
2013-12-2713:16:56,408DEBUG[mapperNS.user.selectUser]-==>Parameters:1(String)
2013-12-2713:16:56,430TRACE[mapperNS.user.selectUser]-<==Columns:id,name,sex,degree,birthdaty
2013-12-2713:16:56,436TRACE[mapperNS.user.selectUser]-<==Row:1,wang,1,1.00,1983-08-01
2013-12-2713:16:56,437DEBUG[mapperNS.user.selectUser]-<==Total:1
2013-12-2713:16:56,439INFO[action.UserAction]-User[id=1,name=wang,sex=1,birthday=null]
另一文章
相关文章推荐
- mybatis下使用log4j打印sql语句和执行结果
- mybatis下使用log4j打印sql语句和执行结果
- 配置log4j 打印mybatis sql以及执行结果
- 非常简单,让log4j输出mybatis的sql语句和执行结果
- 使用LOG4J打印ibatis执行的SQL语句
- mybatis使用spring-druid数据源连接池配置log4j打印sql语句以及开启监控平台
- log4j的使用以及mybatis在控制台打印sql语句
- [置顶] 【p6spy】程序员开发利器P6spy——打印执行sql语句,mybatis、ibatis、Hibernate均可使用
- Mybatis在编译器中打印sql语句及执行后的结果
- mybatis中使用log4j打印sql语句不起作用问题
- log4j打印mybatis sql语句
- Mysql 将结果保存到文件 从文件中执行sql语句 记录操作过程(tee 命令的使用)
- ibatis执行SQL语句打印控制台的log4j.xml文件配置方法
- java web项目中利用log4j将mybatis执行的sql打印至控制台的方法
- Ibatis,Mybatis利用log4j将SQL语句打印在控制台
- php使用odbc执行复杂函数遇到的问题,sql语句直接在sqlserver数据库中运行有结果,使用php总是为空
- log4j.xml 简单配置 打印 mybatis 执行的 sql 语句
- 如何使用BAT文件批量运行SQL语句,并保存执行结果
- 使用PreparedStatement的execute方法执行sql插入语句,执行成功,但是返回结果却为false
- log4j 在控制台打印 mybatis 的 sql 语句的配置