控制台中的休眠输出仍然可见



我在hibernate方面遇到了一个奇怪的问题。为了避免hibernate的输出,我更改了logback.xml和persistence.xml文件。

persistence.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 .....

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

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

  1. 检查log4j配置文件中的log4j.logger.org.hibernate / log4j.logger.javax.persistence并将其设置为error/noe。(如果您获得了此文件,但试图找到它,则为可选(。

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

    hibernate.show_sql=false

    hibernate.format_sql=false

我希望这能帮助你,继续你的工作!

最新更新