使用SLF4J库而不是Apache Log4j还有其他优势吗?

for*_*t17 2 java logging log4j slf4j

我遇到了这个库,用于在我的任务中记录slf4j.我之前使用过apache log4j库但是从文档中我无法理解slf4j库的用例.(面掌)任何人都可以告诉我使用SLF4j或可能的真实案例的好处.

npi*_*nti 6

根据SLF4J网站(Bold annotations是我做的):

Simple Logging Facade for Java(SLF4J)用作各种日志框架(例如java.util.logging,logback,log4j)的简单外观或抽象,允许最终用户在部署时插入所需的日志记录框架.

因此,似乎SLF4J库提供了所使用的底层日志框架的抽象.根据他们的网站,这将允许您编写独立于自SLF4J包装底层日志记录机制以来使用的日志框架的应用程序.因此,就您的应用程序而言,它不关心您正在使用的基础日志记录机制.

  • @ rockyit86:除了Puce提到的内容之外,还有一些情况是您希望提供日志记录功能,而无需将自己与特定的记录器联系起来.这通常是框架开发人员的情况.使用您的框架的人可能会习惯于特定的日志框架.SLF4J提供的是中间的一种方式.它允许您在不指定特定记录器的情况下进行记录.由谁来使用你的框架来指定一个. (2认同)