Simple Logging Facade for Java (SLF4J) http://www.slf4j.org/ 简单统一日志门面(好贴切)
SLF4J是为各种loging APIs提供一个简单统一的接口,从而使得最终用户能够在部署的时候配置自己希望的loging APIs实现。
简单说,你的项目用的log4j,我的用的java的logging,那么我们整合就会存在问题
而如果都使用SLF4J,那么就是面向抽象接口编程,具体用什么方式实现日志,都可以采用包含不同的jar包来实现
SLF4J 和已有日志实现的绑定是在编译时静态执行的,具体绑定工作是通过一个jar包实现的,使用时只要把相应的jar包(只有一个)放到类路径上即可。
比如,使用log4j:
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)
其实slf4j原理很简单,他只提供一个核心slf4j api(就是slf4j-api.jar包),这个包只有日志的接口,并没有实现,所以如果要使用就得再给它提供一个实现了些接口的日志包,比如:log4j,common logging,jdk log日志实现包等,但是这些日志实现又不能通过接口直接调用,实现上他们根本就和slf4j-api不一致,因此slf4j又增加了一层来转换各日志实现包的使用.
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
private static Logger logger = LoggerFactory.getLogger(RheaDhcpClient.class);
统一的日志调用接口 SLF4j
最新推荐文章于 2023-10-03 18:44:33 发布