控制台中的休眠输出尚可见

问题描述

我有一个关于休眠的奇怪问题。我想避免 hibernate 的输出,而不是我更改了 logback.xml 和 persistence.xml 文件,以便做到这一点。

持久性.xml

<properties>
            <property name="hibernate.hbm2ddl.auto" value="create-drop" />
            <property name="hibernate.show_sql" value="false" />
            <property name="hibernate.format_sql" value="false" />
            <property name="hibernate.use_sql_comments" value="false" />
            <property name="hibernate.transaction.flush_before_completion" value="true" />
</properties>

logback.xml

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
 
  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">

    <Pattern>%d{HH:mm:ss.SSS} %-5level [%thread] %logger{56}.%M (%file:%line\) =&gt; %msg%n</Pattern>
    </encoder>
  </appender>
   
  <logger name="org.hibernate" level="OFF"/>
  <logger name="org.hibernate.sql" level="OFF"/>
  <logger name="org.hibernate.transaction" level="OFF"/>
  <logger name="org.hibernate.type" level="OFF"/>
  <logger name="org.hibernate.tool.hbm2ddl" level="OFF"/>
  <logger name="org.hibernate.pretty" level="OFF"/>
  <logger name="org.hibernate.cache" level="OFF"/>
  <logger name="org.hibernate.type.descriptor.sql" level="OFF" />

    
  <root level="OFF">
    <appender-ref ref="STDOUT" />
  </root>
</configuration>

但我在控制台中得到了休眠输出,我想避免它。

Hibernate: select .....

我不知道为什么,也许你能帮我吗?。

解决方法

可能有更多的来源负责休眠输出。请尝试以下步骤将其关闭:

  1. 检查您的 log4j 配置文件中的 log4j.logger.org.hibernate / log4j.logger.javax.persistence 并将其设置为错误/无。 (如果您有此文件但尝试找到它,则可选)。

  2. 在标签集中的persistence.xml中:

    hibernate.show_sql=false

    hibernate.format_sql=false

希望这对你有帮助,继续努力!

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...