SLF4J

1. 日誌框架的介紹

日誌門面(日誌的抽象層) 日誌實現
JCL、SLF4J、Jboss-logging、Commons-logging Log4j、JUL、Log4j2、Logback

2. SLF4J的使用

在開發過程中,日誌記錄方法的調用,不應該來直接調用日誌的實現類,而是調用日誌抽象層裏面的方法;
**具體方法:**給系統裏面導入SLF4J的jar和logback的實現jar

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的使用
每一個日誌的實現框架都有自己的配置文件。使用SLF4J以後,配置文件還是做成日誌實現框架的配置框架,SLF4J只提供一個統一的抽象層。

3. 如何讓系統中所有的日誌都統一到SLF4J?

一般地,系統中會用到好幾種框架,比如:Spring、Hibernate、MyBaits等。但是這幾個框架分別所用的日誌框架不同,爲了將它們統一起來,我們可以:

  1. 將系統中其他日誌框架先排除出去;
  2. 用中間包來替換原有的日誌框架;
  3. 再來導入SLF4J其他的實現。

4. SpringBoot日誌關係

<dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-logging</artifactId>
</dependency>

SpringBoot使用它來做日誌功能。
總結:

  1. SpringBoot底層也是使用slf4j + logback的方式進行日誌記錄;
  2. SpringBoot也把其他的日誌都替換成了slf4j;
  3. 中間轉換包;
  4. 如果我們要引入其他框架,一定要把這個框架的默認日誌依賴移除掉;
  5. SpringBoot能自動適配所有的日誌,而且底層使用 slf4j + logback 的方式記錄日誌。在引入其他框架的時候,我們需要做的只是把這個框架依賴的日誌框架排除掉。

5. 日誌使用

1.默認配置

SpringBoot默認幫我們配置好了日誌;

2.指定配置

給類路徑下放上每個日誌框架自己的配置文件即可,SpringBoot就不使用它的默認配置了。

6.切換日誌框架

可以按照 slf4j 的日誌適配圖,進行相關的切換。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章