Ibatis,Mybatis利用log4j將SQL語句列印在控制檯
在做一個專案Demo的時候,使用MyBatis+Spring,發現寫好的SQL查詢出來不對勁,但是也沒報錯,
所以想到用日誌把SQL語句打出來.也參考了部分網友的程式碼,最後總結了一下,發現正常執行。
本人專案為Mybatis+SpringMVC,所有都已配置好,且正常執行。
此過程無需配置,直接在classPath目錄建立log4j.properties,檔案,並將下列程式碼貼上進去即可,此程式碼部分參考網友。
### set log levels ###
log4j.rootLogger = debug , stdout
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = %d %p [%c] - %m%n
### 輸出到日誌檔案 ###
log4j.appender.D.File = logs/log.log
log4j.appender.D.Append = true
log4j.appender.D.Threshold = DEBUG ## 輸出DEBUG級別以上的日誌
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}
### 儲存異常資訊到單獨檔案 ###
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = logs/error.log ## 異常日誌檔名
log4j.appender.D.Append = true
log4j.appender.D.Threshold = ERROR ## 只輸出ERROR級別以上的日誌!!!
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern
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
log4j.logger.java.sql.Connection=debug
log4j.logger.java.sql.Statement=debug
log4j.logger.java.sql.PreparedStatement=debug,stdout
Log4J中輸出形式選擇:
org.apache.log4j.ConsoleAppender(控制檯)
org.apache.log4j.FileAppender(檔案)
org.apache.log4j.DailyRollingFileAppender(每天產生一個日誌檔案)
org.apache.log4j.RollingFileAppender(檔案大小到達指定尺寸的時候產生一個新的檔案)
org.apache.log4j.WriterAppender(將日誌資訊以流格式傳送到任意指定的地方)
需要有Log4j.jar包,如果沒有可以在我的資源中下載.