【问题标题】:spring, hibernate, log4j for centralized error catchingspring、hibernate、log4j 用于集中错误捕获
【发布时间】:2011-03-13 06:49:33
【问题描述】:

我正在使用 JSF 2.0、Spring、Hibernate,我需要实现 Log4J 以进行集中式错误捕获。有人可以帮忙吗?

【问题讨论】:

    标签: java hibernate spring log4j jsf-2


    【解决方案1】:

    如果您想要集中式日志记录,并且由于您使用的是 Spring 和 Hibernate,那么事情会比提供 log4j.properties 稍微复杂一些,因为 Hibernate 使用 SLF4J 作为日志记录外观,而 Spring 使用 Jakarta Commons Logging (JCL) 作为日志外观和they seem to conflict

    我的建议是使用 SLF4J,为此,您需要:

    • 提供slf4j-api.jar(实际上你应该使用 Hibernate 获得这个)
    • 删除来自 Spring 的 commons-logging.jar
    • 提供 jcl-over-slf4j.jar 将 JCL 调用桥接到 SLF4J
    • 为 Log4J (slf4j-log4j12.jar) 提供 SLF4J 绑定,以将 SLF4J 调用桥接到 Log4J
    • 提供log4j.jar

    另见

    【讨论】:

      【解决方案2】:

      log4j 与 spring、jsf 或 hibernate 完全无关。

      • log4j.jar 放入WEB-INF/lib
      • 获取样本 log4j.properties 并放在类路径的根目录中
      • 使用private static final Logger log = Logger.getLogger(CurrentClass.class);

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-06-24
        • 2011-10-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-08-01
        相关资源
        最近更新 更多