hibernate日志记录无法阻止它

时间:2013-11-11 07:31:33

标签: java hibernate log4j

我已经尝试过我认为我在互联网上找到的所有信息都没有结果。我想关掉Hibernate Logging。

我的log4j.properties:

log4j.logger.org.hibernate = INFO
log4j.logger.org.hibernate.SQL=INFO, SQL_APPENDER
log4j.additivity.org.hibernate.SQL=false
log4j.rootLogger=INFO

我的log4.xml:

    <?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration debug="true"
                     xmlns:log4j='http://jakarta.apache.org/log4j/'>
<logger name="org.hibernate">
  <level value="info"/> 
</logger>
   <appender name="consoleAppender" class="org.apache.log4j.ConsoleAppender">
      <layout class="org.apache.log4j.PatternLayout">
         <param name="ConversionPattern" value="%d{dd MMM yyyy HH:mm:ss} %5p %c{1} - %m%n"/>
      </layout>
   </appender>

   <appender name="fileAppender" class="org.apache.log4j.RollingFileAppender">
      <param name="append" value="false"/>
      <param name="file" value="out/learning.log"/>
      <layout class="org.apache.log4j.PatternLayout">
         <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%c{1}] %m%n"/>
      </layout>
   </appender>

   <root>
      <level value="INFO"/>
      <appender-ref ref="consoleAppender"/>
      <appender-ref ref="fileAppender"/>
   </root>

</log4j:configuration>

在我的hibernate.cfg.xml中:

    <property name="hibernate.show_sql">false</property>
    <property name="hibernate.generate_statistics">false</property>
    <property name="hibernate.use_sql_comments">false</property>

此刻我不知道还能做些什么来阻止我控制台上那些令人不安的消息。

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

尝试使用 OFF 级别为每个appender提供帮助

http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/Level.html

答案 1 :(得分:0)

我建议你阅读SLF4J Manual,你的课程路径上应该只有1个Binding jar。

从类路径中删除slf4-simple-1.4.2.jar,它可能会停止使用log4j。

  

slf4j-simple-1.7.5.jar

     

Binding for Simple implementation,它将所有事件输出到System.err。只有级别INFO和的消息   更高的印刷品。这种绑定在小的情况下可能是有用的   应用