我想知道log4j与其他框架的互操作性。例如,如果我希望将来从log4j转移到其他日志框架,那将是什么限制。
另外,如果我使用log4j而不是slf4j,它是否会为我提供更改底层日志框架的灵活性?
最终,我的问题是我是否应该将log4j用于slf4j,或者只使用log4j进行日志记录,以便日后灵活地更改它?
答案 0 :(得分:3)
您需要了解SLF4J的目的。 SLF4J实际上使用其他框架,如log4j,java日志记录或logback。 SLF4J通过绑定来实际将日志记录调用委托给幕后的其他库。
你可以看看这个
Why not use java.util.logging?
使这些库更有意义。 log4j和SLF4j的作者都在回答这个问题。
你可以从他的答案中找到更多的见解,也可以在他的个人资料中找到。
答案 1 :(得分:1)
最终,我们无法为您解答。根据您正在构建的应用程序的短期和长期要求,您需要自己决定。例如,
如果它是一个寿命很短的简单系统,那么它可能并不重要。
如果它是一个可能需要随着时间的推移而发展的长期系统,那么使用像slf4j这样的外观具有明显的长期优势。
如果它是一个可以广泛重复使用的库,那么您需要考虑目标"生态系统"。但是slf4j是非常明智的。
但在您决定需要了解不同技术的目的之前;特别是slf4j的真正目的。