最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

springboot日志的使用與多個日志框架沖突問題及解決

 更新時間:2025年02月19日 08:39:17   作者:worilb  
文章介紹了日志級別、日志分類、logback、log4j、log4j2的使用方法,并討論了統(tǒng)一日志標(biāo)準(zhǔn)的重要性,還提到了各種日志類Jar包的用途,以及如何實現(xiàn)SLF4J門面以兼容不同的日志框架

springboot日志的使用與多個日志框架沖突

1.日志級別

從低至高為:ALL——DEBUG——INFO——WARN——ERROR——OFF,

日志級別越低打印的日志越詳細。

2.日志分類

  • 項目根日志(RootLogger):全局日志,一個項目只有一個根日志
  • 子日志(Logger):包級別日志,一個項目中可以有多個子日志

3.logback日志的使用

springboot默認(rèn)使用logback日志。




4.log4j的使用

<!--        log4j依賴-->
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.12</version>
        </dependency>

5.log4j2的使用

<!--        log4j2依賴-->
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
        </dependency>


6.統(tǒng)一日志標(biāo)準(zhǔn)

1.三種日志框架(實現(xiàn)不同門面)同時使用演示



從前面的例子我們可以看出,Logback已經(jīng)默認(rèn)實現(xiàn)了slf4j標(biāo)準(zhǔn),而Log4j和Log4j2并沒有實現(xiàn)。

2.log4j實現(xiàn)slf4j門面



<!--        springboot啟動器依賴-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
            <exclusions>
                <exclusion>
<!--                    排除logback包-->
                    <groupId>ch.qos.logback</groupId>
                    <artifactId>logback-classic</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

3.log4j2實現(xiàn)slf4j門面


<!--        log4j2實現(xiàn)slf4j依賴-->
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-slf4j-impl</artifactId>
        </dependency>


<!--        springboot啟動器依賴-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
            <exclusions>
                <exclusion>
<!--                    排除logback包-->
                    <groupId>ch.qos.logback</groupId>
                    <artifactId>logback-classic</artifactId>
                </exclusion>
                <exclusion>
<!--                    排除log4j2橋接slf4j依賴-->
                    <groupId>org.apache.logging.log4j</groupId>
                    <artifactId>log4j-to-slf4j</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

7.各種日志類Jar包用途

  • slf4j提供:
jcl-over-slf4j.jar  -->    (jcl    -> slf4j)    將Jakarta Commons Logging日志框架到 slf4j 的橋接  
jul-to-slf4j.jar    -->    (juc    -> slf4j)    將java.util.logging的日志橋接到 slf4j  
log4j-over-slf4j.jar-->    (log4j  -> slf4j)    將log4j 的日志,橋接到slf4j  
osgi-over-slf4j.jar -->    (osgi   -> slf4j)    將osgi環(huán)境下的日志,橋接到slf4j  
slf4j-android.jar   -->    (android-> slf4j)    將android環(huán)境下的日志,橋接到slf4j  
slf4j-api.jar       -->                         slf4j 的api接口jar包  
slf4j-ext.jar       -->                         擴展功能  
slf4j-jcl.jar       -->    (lf4j -> jcl )          slf4j 轉(zhuǎn)接到 Jakarta Commons Logging日志輸出框架  
slf4j-jdk14.jar     -->    (slf4j -> jul )          slf4j 轉(zhuǎn)接到 java.util.logging,所以這個包不能和jul-to-slf4j.jar同時用,否則會死循環(huán)??!  
slf4j-log4j12.jar   -->    (slf4j -> log4j)         slf4j 轉(zhuǎn)接到 log4j,所以這個包不能和log4j-over-slf4j.jar同時用,否則會死循環(huán)??!  
slf4j-migrator.jar  -->                                       一個GUI工具,支持將項目代碼中 JCL,log4j,java.util.logging的日志API轉(zhuǎn)換為slf4j的寫法  
slf4j-nop.jar       -->    (slf4j -> null)          slf4j的空接口輸出綁定,丟棄所有日志輸出  
slf4j-simple.jar    -->    (slf4j -> slf4j-simple ) slf4j的自帶的簡單日志輸出接口
  • log4j2提供:
log4j-1.2-api.jar   -->    (log4j  -> log4j2)               將log4j 的日志轉(zhuǎn)接到log4j2日志框架  
log4j-api.jar       -->                                     log4j2的api接口jar包  
log4j-core.jar      -->    (          log4j2 -> log4j-core) log4j2的日志輸出核心jar包  
log4j-slf4j-impl.jar-->    (slf4j  -> log4j2)               slf4j 轉(zhuǎn)接到 log4j2 的日志輸出框架  (不能和 log4j-to-slf4j同時用)  
log4j-to-slf4j.jar  -->    (          log4j2 -> slf4j)      將 log4j2的日志橋接到 slf4j  (不能和 log4j-slf4j-impl 同時用)  

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • RocketMq深入分析講解兩種削峰方式

    RocketMq深入分析講解兩種削峰方式

    當(dāng)上游調(diào)用下游服務(wù)速率高于下游服務(wù)接口QPS時,那么如果不對調(diào)用速率進行控制,那么會發(fā)生很多失敗請求,通過消息隊列的削峰方法有兩種,這篇文章主要介紹了RocketMq深入分析講解兩種削峰方式
    2023-01-01
  • Java?8?Time?Api?使用方法技巧

    Java?8?Time?Api?使用方法技巧

    這篇文章主要介紹了Java?8?Time?Api?使用方法技巧,Java?8為Date和Time引入了新的API,以解決舊java.util.Date和java.util.Calendar的缺點,更多相關(guān)內(nèi)容需要的小伙伴可以參考一下
    2022-05-05
  • Spring?Boot多數(shù)據(jù)源事務(wù)@DSTransactional的使用詳解

    Spring?Boot多數(shù)據(jù)源事務(wù)@DSTransactional的使用詳解

    本文主要介紹了Spring?Boot多數(shù)據(jù)源事務(wù)@DSTransactional的使用詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • Java窗體居中顯示的2種方法(實例講解)

    Java窗體居中顯示的2種方法(實例講解)

    下面小編就為大家?guī)硪黄狫ava窗體居中顯示的2種方法(實例講解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • 在SpringBoot項目中動態(tài)切換數(shù)據(jù)源和數(shù)據(jù)庫的詳細步驟

    在SpringBoot項目中動態(tài)切換數(shù)據(jù)源和數(shù)據(jù)庫的詳細步驟

    在許多企業(yè)級應(yīng)用中,可能需要根據(jù)不同的業(yè)務(wù)需求來切換不同的數(shù)據(jù)庫,如讀寫分離、分庫分表等場景,Spring Boot 提供了靈活的數(shù)據(jù)源配置方式,本文將介紹如何在 Spring Boot 項目中實現(xiàn)動態(tài)切換數(shù)據(jù)源和數(shù)據(jù)庫的方案,需要的朋友可以參考下
    2025-08-08
  • Java遍歷Map集合的方法(最新推薦)

    Java遍歷Map集合的方法(最新推薦)

    這篇文章主要介紹了Java遍歷Map集合的方法,遍歷map的key集合然后通過key獲取value,本文給大家講解的非常詳細,需要的朋友可以參考下
    2024-05-05
  • SpringBoot 下的 Static 文件夾打包成前端資源的示例代碼

    SpringBoot 下的 Static 文件夾打包成前端資源的示例代碼

    這篇文章主要介紹了SpringBoot 下的 Static 文件夾如何打包成前端資源,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-06-06
  • Java畢業(yè)設(shè)計實戰(zhàn)之醫(yī)院心理咨詢問診系統(tǒng)的實現(xiàn)

    Java畢業(yè)設(shè)計實戰(zhàn)之醫(yī)院心理咨詢問診系統(tǒng)的實現(xiàn)

    這是一個使用了java+Spring+Maven+mybatis+Vue+mysql開發(fā)的醫(yī)院心理咨詢問診系統(tǒng),是一個畢業(yè)設(shè)計的實戰(zhàn)練習(xí),具有心理咨詢問診該有的所有功能,感興趣的朋友快來看看吧
    2022-01-01
  • Java中的反射機制示例詳解

    Java中的反射機制示例詳解

    反射就是把Java類中的各個成分映射成一個個的Java對象。本文將通過示例詳細講解Java中的反射機制,感興趣的小伙伴可以跟隨小編學(xué)習(xí)一下
    2022-03-03
  • java判定數(shù)組或集合是否存在某個元素的實例

    java判定數(shù)組或集合是否存在某個元素的實例

    下面小編就為大家?guī)硪黄猨ava判定數(shù)組或集合是否存在某個元素的實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01

最新評論

高雄县| 田阳县| 宿州市| 滕州市| 巫山县| 九龙县| 中江县| 饶河县| 华蓥市| 凤城市| 平江县| 马关县| 通河县| 武冈市| 澄江县| 镶黄旗| 丰镇市| 肥城市| 盘山县| 辽中县| 临猗县| 兴隆县| 饶阳县| 柞水县| 喀喇| 银川市| 萝北县| 东山县| 当涂县| 连城县| 志丹县| 平安县| 安义县| 隆德县| 太康县| 舒兰市| 开阳县| 五河县| 武威市| 灵寿县| 建瓯市|