Slf4j的使用总结

每次用到Slf4j都麻烦一阵,尽管很方便,但是让很多人搞不明白。

其实Slf4j原理很简单,他只提供一个slf4j api(就是slf4j-api.jar包),这个包只有日志的接口,并没有实现,所以要使用得给它提供一个实现了些接口的日志包,比如:log4j,common logging,jdk log等,但是这些日志实现又不能通过接口直接调用,实现上他们根本就和slf4j-api不一致,因此slf4j又增加了一层来转换各日志实现包的使用,当然slf4j-simple除外。其结构如下:

slf4j-api(接口层)
   |
各日志实现包的连接层( slf4j-jdk14, slf4j-log4j)
   |
各日志实现包

下面这个图更能说明其原理:




在这里还需要注意的是,连接层的jar包和实现的jar的版本要一致。

slf4j-simple最简单:

package Slf4jTest;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class HelloWorld {
	public static void main(String[] args) {
		Logger logger = LoggerFactory.getLogger(HelloWorld.class);
		logger.info("Hello World");
	}
}



它只要slf4j-api-1.5.6.jar和slf4j-simple-1.0.jar两个包即可。

你可能感兴趣的:(jdk,log4j)