SLF4J 与 Log4j

  • 什么是 log4j?

    log4j 是一个可靠、快速和灵活的 logging framework (APIs) written in Java,它是在 Apache 软件许可下分发的。
    log4j 在运行时可以通过外部配置文件进行高度配置。它根据优先级级别查看日志记录过程,并提供将日志信息定向到各种目的地的机制,例如数据库、文件、控制台、UNIX 系统日志等(有关 log4j 的更多详细信息,请参阅我们的 Log4J教程)。
  • SLF4J 和 Log4j 的比较

    与 log4j 不同,SLF4J (Simple Logging Facade for Java) 不是日志框架的实现,它是一个 类似于log4J的Java日志框架的抽象. 因此,您不能将两者进行比较。然而,在两者之间选择一个总是困难的。
    如果您有选择,日志抽象总是比日志框架更可取。如果您使用日志抽象,特别是 SLF4J,您可以在部署时迁移到您需要的任何日志框架,而无需选择单一依赖项。
    观察下图以更好地理解。
    应用