国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Java 日志系列篇二 slf4

maybe_009 / 2875人閱讀

摘要:的橋接器這個橋接器將所有日志委派給的原生實現,直接實現了的接口,因此使用與的搭配也暗示了嚴格的零內存計算溢出未完待補充

起手式

忘了什么時候聽老師說過,牛逼的公司只管定義接口,屌絲廠商實現接口,類似 JDBC 的實現便是如此,用在 slf4j, 總覺得有些類似,本來 SUN 有機會在需求產生之前設計一套漂亮的日志框架來一統天下,可惜偏偏要拖到 JDK1.4, 而這套原生的日志框架也沒有足夠漂亮,而之前早已經經過市場考驗的日志框架也在不斷持續的改進,log4j,logback, common-logging 等等已經在許多系統中長久駐足。

翻到Java中的日志框架史,看到下面有趣的文字

最早出現的日志框架是apache提供的log4j,使用最為廣泛,成為了Java日志的事實上的標準;然而當時Sun公司在jdk1.4中增加了JUL(java.util.logging),企圖對抗log4j,于是造成了混亂,當然此時也有其它的一些日志框架的出現,如simplelog等,簡直是亂上加亂。
解決這種混亂的方案出現了:抽象出一個接口層:于是開源社區提供了commons-logging,被稱為JCL。抽象時參考了log4j、JUL、simplelog,對它們進行了適配或轉接,這樣就一統江湖了。
看上去現在已經非常完美了,但好景不長,log4j的作者(Ceki Gülcü)覺得JCL不夠優秀,他要搞出一套更優雅的出來,于是slf4j就出現了,并且親自實現了一個親子——logback(有點,老子又回來了的感覺^_^)。好吧,確實更優雅了,但混亂局面又出現了,之前使用JCL的怎么辦呢,于是Ceki Gülcü在slf4j又對JCL作了橋接轉換,然而事情還沒完,Ceki Gülcü又回來拯救自己的“大阿哥”——log4j,于是log4j2就誕生了,同時log4j2也加進了slf4j體系中。
PS:SLF4J是在Compile綁定實現的,而JCL是Runtime時綁定的。

正文 Apache user manual 選譯

SLF4J ( The simple logging facade for java ) 作為諸多日志框架的門面或者抽象,這些框架包括java.util.logging, logback 和 log4j. slf4j 允許終端用戶在部署系統時想使用插件一樣來選擇使用不同的日志框架。

關于如何綁定一個日志框架

創建工程,將 slf4j-api-1.7.13.jar 加入 class path , 以下程序編譯運行

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: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.

可見單純的 slf4j 只是定義了一套接口,以及其他日志框架的轉接器
現在我們為 slf4j 綁定最簡單的實現,在 classpath 加入 slf4j-simple-1.7.13.jar
重新編譯運行,控制臺輸出:

0 [main] INFO HelloWorld - Hello World
可以綁定的日志框架的橋接 jars
slf4j-log4j12-1.7.13.jar

log4j 1.2(一個廣泛使用的日志框架)版本的橋接器,你可以將 log4j.jar 加入classpath

slf4j-jdk14-1.7.13.jar

java.util.logging 的橋接器,JDK原生日志框架

slf4j-nop-1.7.13.jar

NOP 橋接器,靜默丟棄一切日志

slf4j-simple-1.7.13.jar

一個簡單實現的橋接器,該實現輸出所有事件到 System.err. 只有INFO以及高于該級別的消息被打印,在小型應用中它也許是有用的。

slf4j-jcl-1.7.13.jar

Jakarta Commons Logging 的橋接器. 這個橋接器將SLF4j所有日志委派給 JCL

logback-classic-1.0.13.jar (requires logback-core-1.0.13.jar)

slf4j 的原生實現,logback 直接實現了 slf4j 的接口,因此使用 slf4j 與 logback 的搭配也暗示了嚴格的零內存計算溢出

未完待補充

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/65346.html

相關文章

  • Java深入學習系列】之那些年我們用過的日志框架

    摘要:深入學習系列三那些年我們用過的日志框架目前常見的日志框架和中文似乎不太好翻譯有一下幾種即其中,為同一個作者所寫。如前面所述,在才被引入,在這之前,并沒有官方的日志庫供開發者使用。 title: 【Java深入學習系列】三. 那些年我們用過的日志框架date: 2016-10-16 15:32:50 category: java 目前常見的Java日志框架和facades(中文似乎不太好...

    233jl 評論0 收藏0
  • Java日志那些事

    摘要:但是考慮到各不相同,所以出現了等日志框架。日志框架只是統一的,其底層的具體的日志記錄工作還是由等承擔。如何選擇和搭配日志系統目前來說,新應用使用是首選,一些老系統中很可能使用的是等。所以若日志沖突時,使用的三方庫只需要相應的實現庫即可。 日志系統的發展 我們日常接觸到的日志系統有很多種,log4j,JUL(jdk自帶),logback等,我們可以直接根據對象的日志API進行使用。但是考...

    GeekQiaQia 評論0 收藏0
  • 強推!大牛程序員必備的Java日志框架,性能無敵

    摘要:本文要來分享給大家程序員最常用的日志框架組件。沒有基礎的同學也不要著急,這套教程覆蓋了目前所有的日志框架,只要你學,就一定用得到,先收藏,以備不時之需。 作為一名Java程序員,我們開發了很多Java應用程序,包括桌面應用、WEB應用以及移動應用。然而日志系統是一個成熟Java應用所必不可少的。在開發和調試階段,日志可以幫...

    zebrayoung 評論0 收藏0
  • java日志框架

    摘要:一日志概述領域存在多種日志框架,目前常用的日志框架包括,,,,,。開銷更高三與其他日志組件調用關系包名說明版本的橋接器,你需要將加入。的橋接器,原生日志框架。 一、Java日志概述 java領域存在多種日志框架,目前常用的日志框架包括Log4j 1,Log4j 2,Commons Logging,Slf4j,Logback,Jul。 Commons Logging和Slf4j是日志...

    dendoink 評論0 收藏0
  • 如何配置SLF4J不同的日志實現

    摘要:想要看級別的信息,你需要在啟動時傳入這個系統屬性使用與日志現在我們可以試驗并更換不同的日志實現,但你的程序代碼可以保持不變。我們要做的是用另一個流行的日志實現來替換掉,比如。又一次,我們必須對我們選的每一個日志實現做配置。 使用slf4j庫作為你的Java應用日志API層有很多好處,這里我會展示一小部分關于如何使用和配置它的例子。 你可以把slf4j想成一個Java的接口,然后你需要實...

    bovenson 評論0 收藏0

發表評論

0條評論

maybe_009

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<