您的位置:首页 > 数据库

mybatis用logback日志不显示sql的解决办法

2016-04-05 15:04 471 查看
mybatis用logback日志不显示sql的解决方法

1.mybatis-config.xml的设定

关于logimpl的设定值还不支持logback,如果用SLF4J是不好用的。

这是官方文档的描述,见下图



设定改为STDOUT_LOGGING是可以显示sql的

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


2.原因是:

mybatis源代码BaseExceutor.java

protected Connection getConnection(Log statementLog) throws SQLException {
Connection connection = transaction.getConnection();
if (statementLog.isDebugEnabled()) {
return ConnectionLogger.newInstance(connection, statementLog);
} else {
return connection;
}
}


如果设定了

STDOUT_LOGGING


实现类是StdOutImpl.java

public boolean isDebugEnabled() {
return true;
}


debug就开启了,log就可以打印sql了

3.logback.xml的设定

<logger name="org.apache.ibatis" level="DEBUG">
<appender-ref ref="STDOUT"/>
</logger>

<logger name="java.sql" level="debug">
<appender-ref ref="STDOUT"/>
</logger>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: