日志框架詳解(slf4j,log4j,logback)

我相信對于絕大多數(shù)小白來說,日志框架這一塊會特別的頭痛,特別是在一個大項(xiàng)目中,POM文件中包含了各種各樣的日志依賴,然后各種各樣的日志依賴(slf4j,logging,log4j,logback等)又相互沖突,導(dǎo)致我們經(jīng)常不知道該怎么辦,對于輸出的日志格式也經(jīng)常是隨緣的,系統(tǒng)怎么輸出就怎么看,根本拿它沒有辦法?,F(xiàn)在就讓我們來全面的了解一些不同的日志框架,使其可以很好的為我們所用,成為我們消滅bug的一個好幫手。


The Simple Logging Facade for Java (SLF4J) serves as a simple facade or abstraction for various logging frameworks (e.g. java.util.logging, logback, log4j) allowing the end user to plug in the desired logging framework at deployment time

我們?nèi)粘1容^常見的日志框架有slf4j、logging、log2j,logback,slf4j的全稱是Simple Logging Faced for Java,采用的是一種門面模式,是各種日志的系統(tǒng)實(shí)現(xiàn)(logging,log4j,logback)的抽象層或者接口層。因此我們就可以把slf4j理解成各種日志框架的api,這樣我們在需要使用日志的地方,使用的是slf4j的api,而不是特定的日志框架的api去打印日志,提高了可擴(kuò)展性和可維護(hù)性。

對于slf4j在日志系統(tǒng)中的地位,官網(wǎng)中的示意圖如下:


接下來看一些日志框架使用的例子

第一種只引入slf4j

上面的意思是,在運(yùn)行的時候,找不到日志的實(shí)現(xiàn),所以slf4j默認(rèn)的使用了一個什么也不做的實(shí)現(xiàn)。


第二種引入slf4j和simple

可見日志已經(jīng)打印出來了,而且還不需要任何的配置。


第三種使用slf4j和log4j


在沒有配置log4j輸出格式的時候,系統(tǒng)就會進(jìn)行提醒,不會打印出日志。進(jìn)行如下配置:


第四種使用slf4j和jdk


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容