深入理解Hibernate日志
本文向大家介紹Hibernate日志,可能好多人還不了解Hibernate日志,沒有關(guān)系,看完本文你肯定有不少收獲,希望本文能教會你更多東西。
在Hibernate中,Hibernate日志使用Apache commons-logging來為各種事件記錄日志.
commons-logging將直接輸出到Apache Log4j(如果在類路徑中包括log4j.jar)或 JDK1.4 logging (如果運行在JDK1.4或以上的環(huán)境下).
你可以從http://jakarta.apache.org 下載Log4j. 要使用Log4j,你需要將log4j.properties文件放置在類路徑下, 隨Hibernate 一同分發(fā)的樣例屬性文件在src/目錄下.
我們強烈建議你熟悉一下Hibernate的日志消息. 在不失可讀性的前提下, 我們做了很多工作,使Hibernate的日志可能地詳細. 這是必要的查錯利器. 最令人感興趣的日志分類有如下這些:
表 Hibernate日志類別
類別 |
功能 |
org.hibernate.SQL |
在所有SQL DML語句被執(zhí)行時為它們記錄日志 |
org.hibernate.type |
為所有JDBC參數(shù)記錄日志 |
org.hibernate.tool.hbm2ddl |
在所有SQL DDL語句執(zhí)行時為它們記錄日志 |
org.hibernate.pretty |
在session清洗(flush)時,為所有與其關(guān)聯(lián)的實體(最多20個)的狀態(tài)記錄日志 |
org.hibernate.cache |
為所有二級緩存的活動記錄日志 |
org.hibernate.transaction |
為事務(wù)相關(guān)的活動記錄日志 |
org.hibernate.jdbc |
為所有JDBC資源的獲取記錄日志 |
org.hibernate.hql.AST |
在解析查詢的時候,記錄HQL和SQL的AST分析日志 |
org.hibernate.secure |
為JAAS認證請求做日志 |
org.hibernate |
為任何Hibernate相關(guān)信息做日志 (信息量較大, 但對查錯非常有幫助) |
在使用Hibernate開發(fā)應(yīng)用程序時, 你應(yīng)當總是為org.hibernate.SQL 開啟debug級別的日志記錄,或者開啟hibernate.show_sql屬性。
【編輯推薦】