slf4j的包使用说明

http://www.slf4j.org/ 全称:Simple Logging Facade for Java 简单日志门面(Facade)SLF4J是为各种loging APIs提供一个简单统一的接口,从而使得最终用户能够在部署的时候配置自己希望的loging APIs实现。 Logging API实现既可以选择直接实现SLF4J接口的loging APIs如: logback、SimpleLogger。也可以通过开发相应的适配器来使用已有的API实现如 Log4jLoggerAdapter、JDK14LoggerAdapter。 SLF4J 不依赖任何特殊的class loader机制,实际上,SLF4J 和已有日志实现的绑定是在编译时静态执行的,具体绑定工作是通过一个jar包实现的,使用时只要把相应的jar包(只有一个)放到类路径上即可。 在SLF4J发行版本中包含了几个jar包,如slf4j-nop.jar, slf4j-simple.jar, slf4j-log4j12.jar, slf4j-log4j13.jar, slf4j-jdk14.jar and slf4j-jcl.jar,Each of these jar files is hardwired at compile-time to use just one implementation, that is NOP, Simple, log4j version 1.2, log4j version 1.3, JDK 1.4 logging, and repectively JCL等. SLF4J支持多个日志系统,比如NOP, Simple, log4j version 1.2, log4j version 1.3, JDK 1.4 logging, JCL and logback。 使用slf4j尽管很方便,但是让很多人搞不明白slf4j那么多包怎么用。 其实slf4j原理很简单,他只提供一个核心slf4j api(就是slf4j-api.jar包),这个包只有日志的接口,并没有实现,所以如果要使用就得再给它提供一个实现了些接口的日志包,比如:log4j,common logging,jdk log日志实现包等,但是这些日志实现又不能通过接口直接调用,实现上他们根本就和slf4j-api不一致,因此slf4j又增加了一层来转换各日志实现包的使用,当然slf4j-simple除外。其结构如下: slf4j-api(接口层) | 各日志实现包的连接层( slf4j-jdk14, slf4j-log4j) | 各日志实现包 下面这个图更能说明其原理: [img]http://pic002.cnblogs.com/images/2010/143719/2010121711242825.png[/img] 在这里还需要注意的是,连接层的jar包和实现的jar的版本要一致。 附jar说明: slf4j-api-1.6.1.jar --> slf4j核心接口包 slf4j-simple-1.6.1.jar --> slf4j Simple Logger日志实现包 slf4j-nop-1.6.1.jar --> slf4j-migrator-1.6.1.jar --> slf4j-log4j12-1.6.1.jar --> slf4j调用log4j的实现包 slf4j-jdk14-1.6.1.jar --> slf4j调用jdk java.util.logging的实现包 slf4j-jcl-1.6.1.jar --> Jakarta Commons Logging slf4j-ext-1.6.1.jar --> log4j-over-slf4j-1.6.1.jar --> jul-to-slf4j-1.6.1.jar --> jcl-over-slf4j-1.6.1.jar --> slf4j+log4j组合使用模式: 1. slf4j-api-1.5.11.jar 2. slf4j-log4j12-1.5.11.jar 3. log4j-1.2.15.jar 4. log4j.properties(也可以是 log4j.xml,本例中用 log4j.propertes) JCL+Log4J组合使用模式: 1. commons-logging-1.1.jar 2. log4j-1.2.15.jar 3. log4j.properties 把这种 SLF4J+Log4J 的使用模式与曾为霸主地位的 JCL+Log4J 的用法进行一下对比(请忽略掉包文件中的版本号): [table] SLF4J+Log4j [/table]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值