我配置了我的pom.xml以包含slf4j和绑定到log4j,并排除了公共日志记录,如解释here和禁用Hibernate自己的日志记录,如解释here所述。在Spring应用程序中禁用Hibernate日志消息
我可以禁止Spring自己的消息,但尽管我的log4j.properties设置如下,但Hibernate消息仍然出来。
log4j.debug=false
log4j.rootCategory=WARN, stdout
log4j.category.org.hibernate=ERROR, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%p %t %c - %m%n
log4j.category.org.springframework = ERROR
log4j.category.org.hibernate = ERROR
Here是我的pom.xml文件:
可能是什么问题?我看到了休眠生成的所有SQL消息。
如果你使用它,你可能需要在你的hibernate配置文件中设置' false ''。 –
@XaviLópez谢谢,我在我的Spring应用程序上下文中实际上有一个类似的东西,并在那里设置它解决了这个问题。我会将你删除的答案标记为答案。我发现在log4j的属性中禁用并不足以压制Hibernate的日志消息仍然有点奇怪,但这是Java EE,我应该保持那么高的希望吗? – ustun
我已经取消了答案。我建议您发布自己的答案,解决您遇到的特定问题,以及您如何解决问题。当然,如果它对你有帮助,你可以升级它。:)从Hibernate Reference中,使用'show_sql = true'相当于使用'log4j.logger.org.hibernate.SQL = DEBUG'。也许它会覆盖'SQL'子包的跟踪级别。我现在没有办法测试这个,但也许别人可以对此有所了解:] –