开发者学堂课程【SpringBoot快速掌握 - 核心技术:Slf4j使用原理 】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/612/detail/9234
Slf4j使用原理
一, 如何在系统中使用 SLF4j
1、如何在系统中使用 SLF4j
以后开发的时候,日志记录方法的调用,不应该来直接调用日志的实现类,而是调用日志抽象层里面的方法;给系统里面导入 slf4j 的 jar 和 logback 的实现 jars
//日志记录
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class Helloworld {
public static void main(String[ ] args){
Logger = LoggerFactory.getLogger(Helloworld.class ) ;logger.info("Hello world");
}
}
图示;
//如果说用户在 application 应用中只导入了 slf4j 的 jar 包,slf4j 是日志的一个抽象层,假设系统中只导入了 slf4j 的包,最后便会输出到一个空的位置。用户的应用程序面向 slf4j 编程,用户调用它的方法进行日志记录,同时也导入了 logback (日志的实现)的 jar 包,在这里用户虽然调用的是 api 这个接口,可最后真正将文件在控制台进行打印的却是 logback 。使用流程是先导入 slf4j 的 jar 包,再导入 logback 的 jar 包即可。场景二,如果 slf4j 要绑定 log4j ;首先在 log4j 设计之初,就没有考虑到会出现 slf4j ,因此,按照流程,我们的应用程序还是应该直接调用抽象层,这时如果想要实现 log4j 与 slf4j 之间的对接就需要一个适配层,导入适配层之后就可以使用 log4j 了。同理可得,当用户想要调用 JVM rutime ,也需要在抽象层和 JVM rutime 之间导入一个适配层的 jar 包。Slf4j 默认的配置有,当用户想要实现 slf4j-simple.jar 的功能时,只需要将 slf4j-simple.jar 包导入即可使用。又或者是导入 slf4j-nop.jar 直接使用对应的功能即可。其中,深蓝颜色的都是实现的,墨绿颜色的都是我们中间的适配层
每一个日志的实现框架都有自己的配置文件。使用 slf4j 以后,配置文件还是做成日志实现框架自己本身的配置文件;