我正在開發一個hibernate控制檯應用程序,並參考此文章http://www.mkyong.com/hibernate/how-to-display-hibernate-sql-parameter-values-solution/來設置P6Spy以查看「(?)」的實際值是多少由Hibernate生成的SQL。在休眠應用程序中使用P6Spy攔截JDBC語句到數據庫
設置應該可以正常工作,因爲我可以在應用程序啓動期間看到P6Spy輸出的信息/調試消息。但是,之後,P6Spy似乎無法攔截任何JDBC語句。從休眠生成的日誌(例如:Hibernate: insert into Module (projectName, moduleName, projectId) values (?, ?, ?)
)中,可以確定JDBC語句已經發送到數據庫。
以下是我的設置:
的hibernate.cfg.xml
- 已經指定使用P6SPY 司機:
<property name="hibernate.connection.driver_class">com.p6spy.engine.spy.P6SpyDriver</property>
- 已經開啓了 hibernate.show_sql屬性:
<property name="hibernate.show_sql">true</property>
spy.properties
- 已經改爲使用我的實際 數據庫的JDBC驅動程序,過濾器設置爲 假,includecategories已經 明確設置登錄任何東西。
module.log=com.p6spy.engine.logging.P6LogFactory realdriver=oracle.jdbc.driver.OracleDriver filter=false dateformat=yyyy.MM.dd HH:mm:ss excludecategories= includecategories=error, info, batch, debug,statement,commit,rollback,result appender=com.p6spy.engine.logging.appender.StdoutLogger
難道我錯過任何重要的設置?