監控 Hibernate SQL 查詢與參數
偵錯 Hibernate 應用程式通常需要檢查產生的 SQL 查詢,包括它們的參數值。 標準 Hibernate 日誌記錄僅顯示佔位符問號而非實際值。 本文詳細介紹如何揭示這些數值。
利用 Hibernate 的內建日誌記錄
Hibernate 為詳細查詢視覺化提供了兩種日誌記錄類別:
org.hibernate.SQL
(偵錯等級): 顯示所有執行的 SQL 資料操作語言 (DML) 語句。 org.hibernate.type
(追蹤等級): 公開每個查詢中使用的所有 JDBC 參數。 透過將這些行新增至您的 log4j
設定檔來啟用此日誌記錄功能:
<code># Displays SQL statements log4j.logger.org.hibernate.SQL=debug # Displays JDBC parameters log4j.logger.org.hibernate.type=trace</code>
替代方案:使用 JDBC 代理驅動程式
對於喜歡 Hibernate 原生日誌記錄替代方案的人來說,P6Spy 等 JDBC 代理驅動程式提供了一個強大的解決方案。此驅動程式會攔截並修改 JDBC 調用,提供查詢的預執行視圖以進行全面分析。
以上是如何在 Hibernate 中記錄帶有參數值的 SQL 查詢?的詳細內容。更多資訊請關注PHP中文網其他相關文章!