天天看点

几种常见的JAVA日志框架的简单介绍

接口级别的Java日志框架:slf4j 和common-log

实现级别的:JDK自带的, log4j, log4j2, logback(这个是slf4j旗下的具体实现)

为什么会有接口呢?是为了方便日志框架的选择:slf4j 和common-log 都能自动识别你要用的日志的框架(也就是实现级别的日志框架),

大致的原理是这两个接口会根据你引进的jar包来调用相应的实现,如果同时引进了多个,会根据自带的classloader扫描的顺序进行调用,

但是slf4j 需要一个中间的转换桥梁,类似于slf4j-log4j12-1.7.22这样的,不用担心你找不到转换器,slf4j官方提供这些转换器.

所以 slf4j 的实现大致是slf4j.api +slf4j-log4j12-1.7.22(转换器)+log4j(具体的日志框架实现)

而common—log 就很牛逼了,这个不需要任何中间件, 使用方式是 common-log.api +(具体的日志框架实现)

当然直接使用实现级别的日志框架也可以,只是少了灵活性,比如你现在正在用的jdk自带的日志框架,所以你在code里面引进的类的时候肯定也是jdk的类,

如果你现在要是用log4j这样的日志框架,你就需要把log4j的jar包加进去,然后还要修改code。

如果我们使用日志框架接口呢, 引进class类的时候是接口类,  我们呢,只需要导入对应的jar包,写好相应的日志配置文件,就可以了,当然如果是slf4j还要引入对应的转换器.

贴个链接:http://www.importnew.com/16331.html

继续阅读