0

休止状態のログをエラーに設定しようとしています。log4j.properties では、これは私が持っているエントリです:

#---------- Spring log -------------------------------
log4j.logger.org.springframework=error
log4j.logger.org.springframework.transaction=error

#---------- Hibernate log ----------------------------
log4j.logger.org.hibernate=error

ただし、起動ログには引き続き次のメッセージが表示されます。

31 [main] INFO org.hibernate.cfg.Environment - Hibernate 3.3.2.GA
2328 [main] INFO org.hibernate.cfg.Environment - hibernate.properties not found
2328 [main] INFO org.hibernate.cfg.Environment - Bytecode provider name : javassist
2344 [main] INFO org.hibernate.cfg.Environment - using JDK 1.4 java.sql.Timestamp handling
6734 [main] INFO org.hibernate.cfg.HbmBinder - Mapping class: <pkg.class> -> bbbbb
7656 [main] INFO org.hibernate.cfg.HbmBinder - Mapping class: <pkg.class> -> aaaaa
8422 [main] INFO org.hibernate.cfg.HbmBinder - Mapping class: <pkg.class> -> xxxx

これらをログに記録しないようにするにはどうすればよいですか? これらをログに記録すると、初期化が遅くなるようです。

4

1 に答える 1

0

ほとんどの場合、あなたlog4j.propertiesは制御できません。

Hibernate は SLF4Jをサポートしており、どうやら何をしなければならないかを示す優れたドキュメントがあるようです。

SLF4J のドキュメントに従ってアプリケーションのログ記録を設定することで、さらに一歩進んで完全に防弾対策を講じることをお勧めします。

基本的に、上記のドキュメントの下の図に示すように、依存関係の観点からLog4j優先するSLF4J実装として、次のことを行う必要があります。

  1. Apache Commons loggingすべての推移的な( jcl ) およびJava Logging( jul ) 依存関係から明示的に除外します。
  2. 対応する SLF4J ブリッジ ライブラリjcl-over-slf4jをその場所にインクルードjul-to-slf4jし、クラスパスにある依存ライブラリをSLF4JそこからLog4j(および props ファイルに) パイプします。

ここに画像の説明を入力

于 2016-08-04T23:25:51.413 に答える