什么是 slf4j
参考官网 (https://www.slf4j.org) 的说明:
The Simple Logging Facade for Java (SLF4J) serves as a simple facade or abstraction for various logging frameworks (e.g. java.util.logging, logback, log4j) allowing the end user to plug in the desired logging framework at deployment time.
总的来说, slf4j 是一系列的日志接口, 而 log4j, logback 是具体实现的日志框架. 接下介绍三种常用的实现.
slf4j-log4j12
log4j 是 apache 实现的一个开源日志组件. 那为什么这里叫 log4j12 呢? 因为该方案依赖 log4j 1.2.x 版本. 这是 slf4j 的包装实现 (Wrapped implementations)
log4j-slf4j-impl
logback-classic
logback 同样是由 log4j 的作者设计完成的, 拥有更好的特性, 用来取代 log4j 的一个日志框架. 它是 slf4j 的原生实现 (Native implementations), 也是 spring-boot 的默认选择.