Hibernateは、http://www.slf4j.org/[Java(SLF4J)のための簡単なロギングファサード]を使用して、ロギング出力をあなたのperfer logging frameworkis(log4j、JCL、JDKロギング、lofback …​)にリダイレクトします。このチュートリアルでは、SLF4j Log4j

ロギングフレームワークで

Hibernateにログインする方法を説明します。

この記事で使用されているテクノロジ:

  1. Hibernate 3.6.3.Final

  2. slf4j-api-1.6.1

  3. slf4j-log4j12-1.6.1

  4. Eclipse 3.6

  5. Maven 3.0.3

1. SLF4jを入手するLog4j

Hibernateにログインするには、 ”

slf4j-api.jar

“とlog4j ”

slf4j-log4j12.jar

“のような好みのバインディングが必要です。 `pom.xml`に依存関係を宣言するだけです。


File:pom.xml

<project ...>
    <repositories>
        <repository>
            <id>JBoss repository</id>
            <url>http://repository.jboss.org/nexus/content/groups/public/</url>
        </repository>
    </repositories>

    <dependencies>

        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-core</artifactId>
            <version>3.6.3.Final</version>
        </dependency>

        <!-- slf4j-log4j -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.6.1</version>
        </dependency>

    </dependencies>
</project>

  • slf4j-api.jarはどこですか?


    slf4j-api.jar

    は ”

    hibernate-core ** “の依存関係として定義されているため、再度宣言する必要はありません。

2. Log4jプロパティファイル



log4j.properties

“ファイルを作成し、それをプロジェクトのクラスパスに入れます(下の図を参照)。


hibernateでのlog4jの設定、title = "configure-log4j-hibernate"、width = 595、height = 421


File:log4.properties

# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=C:\\mkyongapp.log
log4j.appender.file.MaxFileSize=1MB
log4j.appender.file.MaxBackupIndex=1
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

# Direct log messages to stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

# Root logger option
log4j.rootLogger=INFO, file, stdout

# Log everything. Good for troubleshooting
log4j.logger.org.hibernate=INFO

# Log all JDBC parameters
log4j.logger.org.hibernate.type=ALL

このlog4j設定では、すべてのロギング出力をコンソールにリダイレクトし、また “C:\\ mkyongapp.log”にファイルをリダイレクトします。

  • 注意** Hibernateには、開発者が何を記録するかを決めるための多くの設定が用意されています。

常にこのhttp://docs.jboss.org/hibernate/core/3.6/reference/en-US/html/session-configuration.html#configuration-logging[Hibernate Log Categories]を参照し、いくつかを選択して、ログファイル。

3.出力

Hibernate Webアプリケーションを実行しようとすると、すべてのログ出力は “C:\\ mkyongapp.log”ファイルに記録されます。下記の図を参照してください。


log4j出力、title = "構成ログ4j-hibernate-logfile"、幅= 640、高さ= 357

ダウンロード – リンク://wp-content/uploads/2009/12/Log4j-Hibernate-Example.zip[Log4j-Hibernate-Example.zip](7KB)