這篇文章的思路源自http://www.cnblogs.com/EasonJim/p/7050312.html這個錯誤的解決,還是使用上一章http://www.cnblogs.com/EasonJim/p/7065330.html的例子代碼,使用的是log4j1.x版本,目的是方便配置,當然,在MyBatis3.4.4版本加入了配置組件的選擇,所以可以指定特定的組件,具體配置如下:
說明:繼上一篇錯誤解決的方法中引入日志的方法只是實現了在Application項目中的BUG解決,但是如果在Web項目中,並且是Spring MVC項目上要正常輸出SQL語句需要做特定的配置。
依賴版本信息:
Spring MVC 4.1.4
MyBatis 3.4.4
MyBatis Spring 1.3.1
log4j 1.2.17
配置步驟:
1、POM的依賴引入
<!-- log4j --> <!-- https://mvnrepository.com/artifact/log4j/log4j --> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency>
2、在resources加入log4j.properties,內容如下:
log4j.rootLogger=DEBUG,Console
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n
log4j.logger.org.apache=INFO
#ex:http://www.cnblogs.com/zhaozihan/p/6371133.html
當然,網上還有很多更詳細的配置,可以搜索一下,這里使用了http://www.cnblogs.com/zhaozihan/p/6371133.html提供的配置。
3、在Configuration.xml加入如下配置:
<properties> <property name="dialect" value="mysql" /> </properties> <settings> <setting name="logImpl" value="LOG4J" /> </settings>
配置好之后,運行效果如下:
日志輸出最關鍵的配置:<setting name="logImpl" value="LOG4J" />,只有配置好這句才可以正常輸出SQL。
當然,如果有其它日志組件需要配置,也是通過此選項為入口,指定哪個類型的日志組件。參考:http://www.mybatis.org/mybatis-3/zh/configuration.html#settings
測試工程:https://github.com/easonjim/5_java_example/tree/master/mybatis/test11
參考:
http://www.yihaomen.com/article/java/425.htm