2013-04-19 49 views
3

我們正在使用mybatis 3,我想查看SQL日誌,但找不到如何啓用它。我在我的應用程序中使用log4j。 我遵循這個mybatis文檔 - http://mybatis.github.io/mybatis-3/logging.html,但是當我運行該應用程序時,我得到以下異常。我錯過了什麼,在WebSphere Application Server中啓用MyBatis SQL日誌,log4j

原因:org.apache.ibatis.builder.BuilderException:解析SQL映射器配置時出錯。原因:org.apache.ibatis.builder.BuilderException:設置logImpl未知。確保你拼寫正確(區分大小寫)。 已經放棄在MyBatis的配置文件,此設置下配置

<settings> 
<setting name="logImpl" value="LOG4J"/> 
</settings> 
+0

在將mybatis版本從3.0.3更新到3.2.2後,此BuilderException消失。但是在哪裏檢查日誌,我在log4j屬性中使用了文件appender,但是在我用於文件appender的日誌文件中沒有形成日誌。 我MyBatis的配置具有這樣 設置<設置名= 「logImpl」 值= 「LOG4J」/> \t 這是我log4j屬性 log4j.rootLogger = TRACE,文件 log4j.logger。 RawMaterialSupplier = TRACE log4j.appender.file = org.apache.log4j.RollingFileAppender進行 log4j.appender.file.File = C:\\ loging.log ...... ...... –

+0

任何人有一些建議,我仍然無法做到這一點。 –

回答

1

我的情況是一樣的:我使用的MyBatis 3.1,並獲得同樣的錯誤。似乎像'logImpl'屬性被添加到更高版本(3.2)。 實驗中我發現,mybatis試圖使用slf4j進行日誌記錄,而我想使用log4j。

對我來說修復是增加對SLF4J-log4j的橋庫(我使用的是:log4j的1.2.17,SLF4J-log4j12 1.7.5)的依賴。因此,解決方法不是爲mybatis設置記錄器,而是爲默認日誌記錄界面(slf4j-api)設置另一個實現。

+0

那麼如何添加配置? – eatSleepCode

+0

我們有Maven項目,所以我剛剛在我的pom.xml中添加了slf4j-log4j作爲依賴項。在構建時,它被置於WAS上部署的戰爭中 – arghtype

相關問題