Hibernate使用Log4j紀錄檔記錄(使用xml檔案)


紀錄檔記錄使程式員能夠將紀錄檔詳細資訊永久寫入檔案。 Log4j和Logback框架可以在hibernate框架中使用來支援紀錄檔記錄。

使用log4j執行紀錄檔記錄有兩種方法:

  • 通過log4j.xml檔案(或)
  • 通過log4j.properties檔案

使用xml檔案執行Log4j執行Hibernate紀錄檔記錄的步驟

使用xml檔案使用log4j執行紀錄檔記錄有兩種方法:

  1. 使用hibernate載入log4j的jar檔案
  2. src檔案夾內建立log4j.xml檔案(與hibernate.cfg.xml檔案同個目錄)

使用xml檔案的Log4j進行Hibernate紀錄檔記錄的範例

您可以通過在hibernate範例中執行兩個步驟來在hibernate中啟用紀錄檔記錄。 這是使用log4j進行紀錄檔記錄支援的hibernate應用程式的第一個例子。

載入所需的jar檔案

您需要使用hibernate的jar檔案和載入slf4j.jarlog4j.jar檔案(http://logging.apache.org/log4j/1.2/)。

建立log4j.xml檔案

現在您需要建立log4j.xml檔案。 在此範例中,所有紀錄檔詳細資訊將被寫入當前專案的log4j_hn.log檔案。

log4j.xml檔案的內容如下

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"
    debug="false">

    <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="[%d{dd/MM/yy hh:mm:ss:sss z}] %5p %c{2}: %m%n" />
        </layout>
    </appender>

    <appender name="ASYNC" class="org.apache.log4j.AsyncAppender">
        <appender-ref ref="CONSOLE" />
        <appender-ref ref="FILE" />
    </appender>

    <appender name="FILE" class="org.apache.log4j.RollingFileAppender">

        <param name="File" value="log4j_hn.log" />
        <param name="MaxBackupIndex" value="100" />

        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="[%d{dd/MM/yy hh:mm:ss:sss z}] %5p %c{2}: %m%n" />
        </layout>

    </appender>

    <category name="org.hibernate">
        <priority value="DEBUG" />
    </category>

    <category name="java.sql">
        <priority value="debug" />
    </category>

    <root>
        <priority value="INFO" />
        <appender-ref ref="FILE" />
    </root>

</log4j:configuration>

此範例的專案名稱:hibernate-logging-by-log4j-using-xml-file,請到下面的下載頁面中下載程式碼。

完整的專案目錄結構如下 -