日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

SpringBoot_日志-slf4j使用原理

發布時間:2024/4/13 javascript 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SpringBoot_日志-slf4j使用原理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
前面我們既然選擇了SLF4J,和logback的組合方式,那么我們系統里面如何使用slf4j呢,首先我們明確一點的就是,我們開發的時候,日志記錄如果我們要調方法,日志方法的調用,我們不應該調日志的實現類,應該調抽象層,不應該直接調用日志的實現類,而是調用日志抽象層的方法,只要你調用日志實現層里的方法,它自動實現使用我們的日志,所以我們想這么來做,那slf4j怎么用呢,可以來到slf4j的官方文檔,我們如何在一個系統用它https://www.slf4j.org/我們來看主頁,這里有一個用戶手冊,點擊來Before you start using SLF4J, we highly recommend that you read the two-page SLF4J user manual.以后我們要日志記錄非常簡單,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的jar包,和logback的實現jar,如果調代碼怎么調呢,人家就有示例,調用slf4j的LoggerFactory,我們抽象層的,獲取記錄器的東西,你傳一個類別,logger.info就可以記錄一些信息了,可以打印到控制臺,也可以輸出到文件,以后要調用就這么來調,但是我們默認使用的是logback的實現,如果你想要用其他實現也行,畢竟slf4j是一個抽象層,實現用什么都行

slf4j的實現,這里有一張圖,我們只要看清這張圖就行了

如果說我們在我們的應用里邊,我們只到了slf4j的jar包,slf4j的具體jar包是slf4j-api.jar,我們只導入了這個jar,它是淺藍顏色,它是一個日志的抽象層,如果我們系統中只導入了slf4j,我們要進行日志的記錄,LoggerFactory來進行日志記錄,那么就會輸出到一個空的位置,因為我們沒有任何的實現,而我們正確的用法呢,應該是這個樣子,我的應用程序,面向slf4j編程,調用它的方法進行日志記錄,而我們在程序里面,也導了日志的實現,logback這些jar包,我們導了他以后呢,調用的是這個接口,但是logback會進行實現,真正的將日志記錄到文件,記錄到控制臺,這是我們如果slf4j如果要用logback,就要這么來用,只需要導入slf4j和logback的jar就行了,但是如果slf4j要綁定log4j,log4j出現的比較早,就根本沒有想到會有slf4j這回事,因為后面的不斷擴展以后,才想出了這個統一抽象層,所以我們按照這個原理,我們應用程序還是調用統一抽象層,我們調用這個抽象層,slf4j的API,但是log4j根本沒有考慮到slf4j這回事,那怎么辦呢,我們需要中間的一個適配層,這個適配層就相當于,上邊實現了slf4j的具體方法,而在里面真正日志記錄的時候,又掉了log4j的API,上有老下有小的感覺,然后中間的適配層,我們把它導入進來,我們就能夠用log4j了,如果要用log4j,系統里面導入這幾個jar,slf4j的jar,slf4j來適配log4j的jar,還有log4j真正實現的jar,那么與此同理,你要調用其他日志的實現,比如我們要調用javautil logging,調java util logging的話呢,他肯定也不考慮slf4j,所以我系統以后要編程,還是面向slf4j編程,但是我要把適配層,適配層上要實現slf4j,下要調用java util的方法,那我們就從slf4j到java util的實現了,那么slf4j也有一些默認的實現,如果我們導入slf4j-api.jar,就面向他編程了,我們只需要導入slf4j,簡單的一些日志實現,就直接能用,slf4j-nop.jar,沒有什么實現的操作包,他也是輸出到一個空的位置,slf4j要真正的來用就這么來用,這些深藍顏色的,都是我們的一些實現,而這個綠顏色,都是我們中間的適配層,他來適配一些本來不認識slf4j框架的,這些日志實現,這些不管是實現層,特別是中間的適配層,這些也是slf4j官方為我們出品的,他來幫我們適配到其他層 我來給大家引入進來,大家在系統里面用slf4j,就是這么來用,但是我們還要補充一個問題,什么問題呢,就是我們每一個日志框架,每一個日志的實現框架,都有自己的配置文件,那如果我們使用了slf4j以后,我們配置文件寫什么,配置文件還是做成日志實現框架的配置文件,我們slf4j只提供一個統一的抽象層,然后你用他實現了,你就寫他的配置文件,畢竟實現類是他,該怎么走,他要根據他的配置文件,所以我們重要的是這個,配置文件還是使用日志實現框架自身的配置文件

?

總結

以上是生活随笔為你收集整理的SpringBoot_日志-slf4j使用原理的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。