SpringMVC+MyBatis+Log4j输出sql语句

今天想看一下myBatis生成的sql语句,看是否有语法错误,但却一直也打印不出来,也有很多人提出了springMVC下的mybatis输出sql语句的方法,但是我试了一下,发现不行,也有可能是给我的配置问题吧,下面给出我的问题所在,解决方案,配置文件。

问题所在:slf4j和log4j的版本问题。

解决方案:在pom.xml里面换成相互支持的版本即可,只需要在src下放一个log4j.propertis即可打印出sql语句。

配置文件代码:

pom.xml:

<!-- 日志相关 -->
		 <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.7.7</version>
        </dependency>
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.7.7</version>
        </dependency>

 log4j.properties:

log4j.rootLogger=debug, console


log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.Target=System.out
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d %5p %c - %m%n
log4j.logger.java.sql.Connection=debug
log4j.logger.java.sql.Statement=debug
log4j.logger.java.sql.PreparedStatement=debug 
log4j.logger.org.mybatis=debug

log4j.logger.org.myrobot.persist=debug 
log4j.logger.org.myrobot.dao=debug 
log4j.logger.org.myrobot.controller=debug

 org.myrobot.*是我自己的包,测试了一下不加也可以。因为log4j.rootLogger已经设置了全局的日志输出方法。

相关推荐