zoukankan      html  css  js  c++  java
  • My batis 与Spring 整合 sql语句不显示问题


    在网上也查了好多方法,有这样写的:
    log4j.logger.java.sql.ResultSet=INFO log4j.logger.org.apache=INFO log4j.logger.java.sql.Connection=DEBUG log4j.logger.java.sql.Statement=DEBUG
    log4j.logger.java.sql.PreparedStatement=DEBUG

    也有这样写的:
    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.

    但我无论用哪一种写法却都不成功!MyBatis官网也找了,百度也谷歌了。最后发现问题根源,项目中有slf4j的包,也在log4j的包,但是没有slf4j-log4j,于是添加如下配置:
    <dependency>
    <groupId>log4j</groupId>
    <artifactId>log4j</artifactId>
    <version>1.2.14</version>
    </dependency>

    <dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.6.1</version>
    </dependency>

    <dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-log4j12</artifactId>
    <version>1.7.2</version>
    </dependency>
    但由于项目中使用有Xmemcached而Xmemcached对于slf4j与slf4j-log4j的版本要求有限制,如果报错请采用如上版本。
    添加好后将日志级别设置成DEBUG则能成功打印出SQL日志,但是会发现xmemcached会不停的打印debug日志,发现这种情况可以根日志级别设置成INFO,然后使用:
    log4j.logger.java.sql.ResultSet=INFO log4j.logger.java.sql.Connection=DEBUG
    log4j.logger.java.sql.Statement=DEBUG
    log4j.logger.java.sql.PreparedStatement=DEBUG
    单独将sql日志级别设置成debug即可。

  • 相关阅读:
    C#写入系统日志(日志位置)
    vue element enter事件
    C#记一次配置文件的坑
    C#简单解决winfrom窗体打开时候闪动
    C#语言切换
    C#textbox允许换行
    C#中窗体边框隐藏
    C#背景图片自适应
    IOC的实现原理—反射与工厂模式
    终生学习
  • 原文地址:https://www.cnblogs.com/shiyalong/p/4500394.html
Copyright © 2011-2022 走看看