【问题标题】:How to configure commons-logging for JUnit testing of Hibernate如何为 Hibernate 的 JUnit 测试配置 commons-logging
【发布时间】:2011-03-30 00:31:40
【问题描述】:

我正在尝试使用 junit 测试和公共日志记录在 spring 应用程序中调试一些休眠功能,但除了显示默认的 INFO 消息之外,我似乎什么也得不到。我也在 E​​clipse 中运行这些 junit 测试。

我在春季论坛上也没有运气。

我对 Hibernate 的调试日志输出特别感兴趣(试图弄清楚为什么运行这个测试需要 23 秒)。

当前输出显示INFO的默认设置:

2011 年 3 月 29 日下午 4:44:35 org.springframework.test.AbstractTransactionalSpringContextTests onSetUp
INFO:开始事务:事务管理器 [org.springframework.orm.hibernate3.HibernateTransactionManager@5f873eb2];默认回滚真
testGetSubjectsForSite 时间:[00:00:00:068]
2011 年 3 月 29 日下午 4:44:58 org.springframework.test.AbstractTransactionalSpringContextTests endTransaction
INFO:测试执行后回滚事务

我尝试将 commons-logging.properties 文件添加到类路径(与 hibernate.properties 和 test-components.xml 相同的位置),但仍然只显示默认的 INFO 消息。

这是 commons-logging.properties 文件:

org.apache.commons.logging.Log=org.apache.commons.logging.impl.Jdk14Logger

# handlers
handlers=java.util.logging.ConsoleHandler

# default log level
.level=FINE
org.springframework.level=FINE
org.hibernate.level=FINE

# level for the console logger
java.util.logging.ConsoleHandler.level=FINE
java.util.logging.ConsoleHandler.formatter=java.util.logging.SimpleFormatter

是否有人能够解释为什么我无法打印出 DEBUG 消息?是否有我缺少的日志记录设置?

编辑:我试过 FINEST 和 DEBUG 都无济于事。

【问题讨论】:

    标签: java spring logging junit


    【解决方案1】:

    不幸的是,Jdk14Logger 使用的日志配置文件似乎应该在运行时指定。 请参阅 JDK 目录中的以下文件:JDK_HOME/jre/lib/logging.properties(如果未找到配置文件,则使用默认文件) 此外,文件路径应该是绝对路径,否则它是相对于执行 JRE 的文件夹 - 参见 java.util.logging.LogManager.readConfiguration() 的代码

    另见: http://www.javapractices.com/topic/TopicAction.do?Id=143 http://cyntech.wordpress.com/2009/01/09/how-to-use-commons-logging/

    【讨论】:

      【解决方案2】:

      您的默认和休眠日志记录处于“FINE”级别,这在 log4j 术语中更像是“INFO”。

      您需要为 org.hibernate 设置 DEBUG 级别,在 JDK 日志记录中该级别等于 'FINEST'

      设置 org.hibernate.level=FINEST(在上面应该启用调试日志的日志中)

      【讨论】:

      • 我没有使用 log4j... 我使用的是 jdk14Logger。 FINE 对于调试消息应该是正确的。为了确认这一点,我尝试了 FINEST,但它仍然没有用。还是谢谢。
      猜你喜欢
      • 1970-01-01
      • 2023-03-10
      • 2010-11-24
      • 2014-05-21
      • 1970-01-01
      • 2012-07-23
      • 2012-11-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多