美文网首页开发
logback、log4j、slf4j三者区别

logback、log4j、slf4j三者区别

作者: Geroge1226 | 来源:发表于2021-08-30 13:24 被阅读0次

1、整体介绍

  • slf4j(Simple logging Facade for Java) 简单日志门面,日志系统的实现进行了具体的抽象化,只提供了统一的日志使用接口,没有任何日志实现,只有一个jar包(slf4j-api.jar)。
  • log4jlogback是具体的日志框架。这两个日志框是同一个作者开发,后者性能更高。
    logbak直接实现slf4j接口,性能更高

2、springboot集成日志说明

springboot默认日子框架为logback

<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
2.2 springboot项目加载日志配置步骤:

(1)LogBack在类路径下优先查找logback.groovy的文件。如果logback.groovy没有找到,则继续查找logback-test.xml文件。
(2)若logback-test.xml文件没有找到,则会类路径下查找logback.xml文件。
(3) 如果没有任何配置文件,LogBack使用BasicConfigurator启动默认配置,配置会将日志输出控制台上不会写进日志文件,它提供了默认的最基础的日志功能。

3、logback的介绍

logback是由log4j创始人设计的另一个开源日志组件。
官方网站: http://logback.qos.ch

3.1 logback 模块
  • logback-core:其它两个模块的基础模块
  • logback-classic:它是log4j的一个改良版本,同时它完整实现了slf4j API使你可以很方便地更换成其它日志系统如log4j或JDK14 Logging
  • logback-access:访问模块与Servlet容器集成提供通过Http来访问日志的功能
3.2 日志级别

共有:trace、debug、info、warn、error 5个级别。
排序为: TRACE < DEBUG < INFO < WARN < ERROR。

4、 lombok中增加了@Slf4j注解

项目中我们通过lombok提供的注解引入slf4j如下:

import lombok.extern.slf4j.Slf4j;
@Slf4j
public class EmailServiceImpl {
    public static void main(String[] args) {
        log.info("test");
    }
}

5、其他日志框架

  • jdk中自带log
    jdk在1.4时也增加了自己的log日志,java.util.logging包

相关文章

网友评论

    本文标题:logback、log4j、slf4j三者区别

    本文链接:https://www.haomeiwen.com/subject/ylzxpltx.html