Java Logging API相关类由JDK提供,我们不能排除掉JDK,因而,在"Java Logging API转SLF4J"过程中采用的转换方案跟"JCL转SLF4J"和"Log4J转SLF4J"采用的转换方案不同,具体思路是以jul-to-slf4j提供的"org.slf4j.bridge.SLF4JBridgeHandler"替换掉Java Logging API使用的Handler(Handler即是Appender),Java Logging API原来使用的Handler将日志输出到Console,文件,数据库等,现在"org.slf4j.bridge.SLF4JBridgeHandler"将日志输出到SLF4J日志框架。简单来说,就是将原本Java Logging API的日志输出重定向到SLF4J日志框架。
SLF4j日志门面框架,非具体实现logback日志实现框架,天然支持SLF4jlog4j是一个日志实现框架。但并不是直接实现的SLF4J,所以如果想使用log4j作为slf4j的实现,需要导入log4j的jar包,还需要需要一个桥接器slf4j-log4j12,使用log4j的风格的日志打印。jul-to-slf4j如果代码里有的实现是用的jul打印的日志,把它重定向到slf4j,类似的还有jcl-over-slf4j,log4j-over-slf4j