mybatis打印sql

在设置log4j.rootLogger=info的情况下,无法打印出sql,只能设置为debug才行

网络上找了一大堆,不知道是不是因为版本问题,都不可用(mybatis 3.2.7)

后来发现mybatis源码中只输出了debug级别的日志,没有info级别的日志。所以定义info级别没有输出任何信息。

一种解决方法是改mybatis源码,暂时不做考虑

再查看官方文档,发现其实只要配置mapper接口类或者配置文件中mapper的路径为debug就可以了,比如某个数据库表对应的mapper文件(配置文件方式,非接口方式)namespace为com.lmiky.jdp.module.Module,则配置log4j.logger.com.lmiky.jdp.module=debug即可,但是mapper很多,不能一个个配置,可以统一配置为log4j.logger.com.lmiky=debug


一开始即使配置为log4j.rootLogger=debug也不能打印,google了下,发现是因为slf4j影响到了,这时候有两种选择,一是可以去掉slf4j的引入,如果项目用到了这个jar包,无法去掉,则引入slf4j-log4j12.jar即可

你可能感兴趣的:(mybatis打印sql)