項目引入log4j而不是logback代碼的原因-創(chuàng)新互聯(lián)

本篇文章給大家分享的是有關(guān)項目引入log4j而不是logback代碼的原因,小編覺得挺實用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

創(chuàng)新互聯(lián)公司堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都做網(wǎng)站、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的廊坊網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

什么是slf4j

SLF4J,即簡單日志門面(Simple Logging Facade for Java),不是具體的日志解決方案,它只服務(wù)于各種各樣的日志系統(tǒng)。按照官方的說法,SLF4J是一個用于日志系統(tǒng)的簡單Facade,允許最終用戶在部署其應(yīng)用時使用其所希望的日志System。

為什么使用slf4j

上面已經(jīng)介紹了slf4j,那么至于為什么使用它。Slf4j可以看成是接口,那么既然是接口,實現(xiàn)在哪里呢?實現(xiàn)就是基于你自己的系統(tǒng)需要引入什么日志。我這里使用了log4j作為slf4j的實現(xiàn)。那么就可以通過slf4j來輸出日志。

slf4j的解耦

試想一下,如果你使用了第三方的類庫,那么比如別人使用了java.util.logging.Logger這個類庫系統(tǒng),那么你的項目使用的是log4j日志系統(tǒng),你是不是要重新引入2種日志系統(tǒng)呢?那現(xiàn)在就有人為了解決這個問題,就提供了slf4j這個日志接口類庫。你只要使用slf4j就可以了,至于你系統(tǒng)使用什么類庫作為我的實現(xiàn),我不管。那么這樣問題就解決了,這也符合java的面向?qū)ο缶幊獭?/p>

代碼部分,由于sprintboot 默認使用logback,如果想用log4j, 需要排除掉logback的jar,引入log4j 的jar

項目引入log4j而不是logback代碼的原因

看看依賴

<dependencies>
    <!--slf4j和log4j日志交換包-->
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-log4j12</artifactId>
    </dependency>
    <!--log4j包-->
    <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <version>1.2.17</version>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
      <!--排除logback包 -->
      <exclusions>
        <exclusion>
          <groupId>ch.qos.logback</groupId>
          <artifactId>logback-classic</artifactId>
        </exclusion>
        <exclusion>
          <groupId>ch.qos.logback</groupId>
          <artifactId>logback-core</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-test</artifactId>
      <scope>test</scope>
      <exclusions>
        <exclusion>
          <groupId>org.junit.vintage</groupId>
          <artifactId>junit-vintage-engine</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
  </dependencies>

網(wǎng)站名稱:項目引入log4j而不是logback代碼的原因-創(chuàng)新互聯(lián)
網(wǎng)站地址:http://muchs.cn/article30/ddhppo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、動態(tài)網(wǎng)站定制網(wǎng)站、網(wǎng)站收錄、品牌網(wǎng)站制作、App設(shè)計

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化