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

来源:互联网 发布:js改变style属性 编辑:程序博客网 时间:2024/05/17 01:35
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> 
0 2
原创粉丝点击