1. 程式人生 > >mybatis打印sql日誌

mybatis打印sql日誌

handler environ tab scrip app 而且 value database IE

開始看網上的配置多數是這種格式

###顯示SQL語句部分
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.rootLogger=DEBUG, stdout

其實 加上這句話的話, 不需要加mybatis的那些配置,日誌也能打印了,但是會有很多無用的日誌或者我們不關心的日誌都打印出來了。

最後有兩種方法可以實現mybatis打印sql。

一、 mybatis自帶的settings

<settings>  
       <setting name="logImpl" value="STDOUT_LOGGING" />  
  </settings>

只需要在mybatis-config.xmi中加入這句話即可;(configuration下的標簽有順序,否則會報錯:properties?, settings?, typeAliases?, typeHandlers?, objectFactory?,
objectWrapperFactory?, reflectorFactory?, plugins?, environments?, databaseIdProvider?, mappers?)

二、利用LOG4J

在log4j.properties中

log4j.logger.com.demo.mapper=DEBUG

其實只要在你的dao層,也就是mapper的接口層日誌等級設置為DEBUG即可;

mybatis打印sql日誌