Mybatis控制台打印sql语句

用到的jar包是:

1<dependency> 2 <groupId>org.slf4j</groupId> 3 <artifactId>slf4j-log4j12</artifactId> 4 <version>1.7.13</version> 5 </dependency> 6 7 <dependency> 8 <groupId>org.mybatis</groupId> 9 <artifactId>mybatis</artifactId> 10 <version>3.3.1</version> 11 </dependency>

log4j.properties文件内容如下:

1log4j.rootLogger=info,stdout 2  3log4j.appender.stdout=org.apache.log4j.ConsoleAppender   4log4j.appender.stdout.layout=org.apache.log4j.PatternLayout   5log4j.appender.stdout.layout.ConversionPattern=%%[%c] -%m%n   6  7  8log4j.logger.com.ibatis=debug 9#print package soc.dao  sql  10log4j.logger.soc.dao=debug 11log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=debug 12log4j.logger.com.ibatis.common.jdbc.ScriptRunner=debug 13log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=debug 14log4j.logger.java.sql.Connection=debug 15log4j.logger.java.sql.Statement=debug 16log4j.logger.java.sql.PreparedStatement=debug,stdout

上面 最关键的一个配置是:log4j.logger.soc.dao=debug,没有这行,则无论jar包是log4j还是slf4j都不会打印sql,无论log4j.rootLogger=info,stdout还是log4j.rootLogger=debug,stdout,也不会打印。

这句配置的意思是将与mybatis mapper文件对应的dao层所在的package下的debug信息打印出来,即“log4j.logger.自己的与mapper文件对应的dao层所在的包=debug”。

log4j的日志优先级从高到低依次是:OFF FATAL ERROR WARN INFO DEBUG TRACE ALL,当设置了低级别时,该低级别及高于该级别的信息都会被打印出来。如定义级别为debug,则OFF FATAL ERROR WARN INFO信息都会打印出来。所以本例中,log4j.logger.soc.dao=trace也是可以的,这样打出的信息会更详细于debug。

扩展:有时多人多模块开发时,会有多个project,仅在其中一个起管理作用(即main方法所有项目,启动时会加载其余的模块)的project下配置了log4j.xml,如放在一个单独的目录conf下,这时启动查询时,控制台并未打出sql语句,不是log4j.xml设置的有问题,而是未将其加入到classpath下,方法是:右键conf文件夹-->Build Path-->use as source folder。

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

java日志相关问题答疑

<dependency<groupIdorg.slf4j</groupId<artifactIdslf4jlog4j12</artifactId<version1.7.12</version</dependency<dependency<g

java日志

<dependency<groupIdorg.slf4j</groupId<artifactIdslf4jlog4j12</artifactId<version1.7.12</version</dependency<dependency<groupIdorg.slf4j</groupId<artifactIdlog4j