appfuse3.5打印Hibernate sql參數
appfuse3.5使用Hibernate4.3.6, 而Hibernate日志框架使用了jboss-logging,想在后臺打出sql的參數一直無法生效。
檢查配置文件,框架里面的兩個配置文件,src/test/resources/log4j2.xml(單元測試時配置),src/main/resources/log4j2.xml(運行時配置)
搞清log4j2的配置后,各種修改(主要是
<Logger name="org.hibernate.SQL" level="trace"/>
<Logger name="org.hibernate.type" level="trace"/>)
用junit測試任然無法打印出真實參數。根據這些實踐,確定log4j2是使用無誤生效的,只是org.hibernate這部分的logger一直未起效
用junit測試任然無法打印出真實參數。根據這些實踐,確定log4j2是使用無誤生效的,只是org.hibernate這部分的logger一直未起效
參考國內外網站,一直無人回答hibernate4的這個問題,有人指出這部分Hibernate官方文檔只是提了一句,一直未更新相關內容。最后有人提到應該是 jboss-logging 的LoggerProviders這個類的問題,看實現對log4j2已經做支持。最后發現 jboss-logging使用的是3.2.0.beta,對比相關類的源代碼,更改為3.2.0.Final,生效!
P.S 把這個問題提交給Appfuse官網,issue APF-1478,作者標志為4.0版本修復。
P.S 把這個問題提交給Appfuse官網,issue APF-1478,作者標志為4.0版本修復。
posted on 2015-07-22 14:11 yuxh 閱讀(297) 評論(0) 編輯 收藏 所屬分類: work