首頁 > 資料庫 > mysql教程 > 如何查看Hibernate實際產生的SQL?

如何查看Hibernate實際產生的SQL?

Susan Sarandon
發布: 2025-01-21 07:47:11
原創
711 人瀏覽過

How Can I See the Actual SQL Generated by Hibernate?

Hibernate顯示真實SQL

在Hibernate的hibernate.cfg.xml設定檔中將show_sql屬性設為true,可以查看Hibernate產生的SQL語句。但是,產生的SQL可能並不總是易於閱讀的格式。

查看實際SQL

要查看直接傳遞給資料庫的實際SQL語句,您可以:

  • 使用JDBC驅動程式代理,例如P6Spy或log4jdbc。
  • 使用log4j.properties檔案啟用以下類別的日誌記錄:
<code>log4j.logger.org.hibernate.SQL=DEBUG
log4j.logger.org.hibernate.type=TRACE</code>
登入後複製

第一個類別等同於hibernate.show_sql=true,而第二個類別則列印綁定參數和其他資訊。

範例

使用第二種方法,您可能會看到以下輸出:

<code>2023-02-27 16:01:18,226 DEBUG org.hibernate.SQL  - select employee.code from employee where employee.code = ?
2023-02-27 16:01:18,232 TRACE org.hibernate.type.descriptor.sql.BasicBinder  - binding parameter [1] as [INTEGER] - [12]</code>
登入後複製

這將為您提供「真實」的SQL,類似於:

<code>select employee.code from employee where employee.code=12</code>
登入後複製

參考

以上是如何查看Hibernate實際產生的SQL?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板