为什么JDK的Logging API被认为太差了?使用第三方日志API(如Apache Log4j?
)可以获得什么?答案 0 :(得分:3)
对于大多数情况,java.util.Logging很好。大多数第三方日志包是在标准API进行任何日志记录之前开发的。
答案 1 :(得分:2)
Log4j是在JDK的Logging API之前创建的。如今,您应该更喜欢使用slf4j以外观方式处理所有Java日志世界。
答案 2 :(得分:1)
我在JDK的日志记录系统上使用(非常非常薄的)自编层,因为它易于使用,易于配置且易于扩展。即使没有这一层,JDK的日志系统也足够了,因此(在我看来)不需要其他日志API。此外,由于它包含在JDK中,因此应将其视为标准。
答案 3 :(得分:-2)
这是因为JDK的Logger类不是接口。 因此,您没有(很少)控制日志记录的完成方式。
使用commons-logging,log4j,slf4j,您可以选择记录消息的方式和位置。无论是进入文件,进入数据库,还是将其重定向到应用程序服务器日志记录等。 使用JDK日志记录,您不能。它始终是一个文件。 如果你想要另一个日志级别,你就不能。
它确实使用了类似slf4j的varargs,因此您不必事先连接String消息。但其他缺点太大了。