国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

slf4j-api、slf4j-log4j12以及log4j之間什么關系?

2019-11-14 12:03:39
字體:
來源:轉載
供稿:網友

來源:http://blog.csdn.net/tengdazhang770960436/article/details/18006127

幾乎在每個jar包里都可以看到log4j的身影,在多個子工程構成項目中,slf4j相關的沖突時不時就跳出來讓你不爽,那么slf4j-api、slf4j-log4j12還有log4j他們是什么關系?我把自己了解的和大家簡單分享一下:

    slf4j:Simple Logging Facade for java,為java提供的簡單日志Facade。Facade:門面,更底層一點說就是接口。他允許用戶以自己的喜好,在工程中通過slf4j接入不同的日志系統。更直觀一點,slf4j是個數據線,一端嵌入程序,另一端鏈接日志系統,從而實現將程序中的信息導入到日志系統并記錄。 

   因此,slf4j入口就是眾多接口的集合,他不負責具體的日志實現,只在編譯時負責尋找合適的日志系統進行綁定。具體有哪些接口,全部都定義在slf4j-api中。查看slf4j-api源碼就可以發現,里面除了public final class LoggerFactory類之外,都是接口定義。因此,slf4j-api本質就是一個接口定義。

      

下圖比較清晰的描述了他們之間的關系:

   

     

  當系統采用log4j作為日志框架實現的調用關系:

    

    首先系統包含slf4j-api作為日志接入的接口;

    

    at compile時slf4j-api中public final class LoggerFactor類中

    PRivate final static void bind() 方法會尋找具體的日志實現類綁定,主要通過    StaticLoggerBinder.getSingleton();語句調用

    

  

   slf4j-log4j12:鏈接slf4j-api和log4j中間的適配器。它實現了slf4j-apiz中StaticLoggerBinder接口,從而使得在編譯時綁定的是slf4j-log4j12的getSingleton()方法

log4j:這個是具體的日志系統。通過slf4j-log4j12初始化Log4j,達到最終日志的輸出。


上一篇:1140_八皇后

下一篇:C++之vector容器初學

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 晋江市| 凤台县| 建始县| 黑山县| 遵义县| 鹤峰县| 乌拉特前旗| 开封县| 禄丰县| 平果县| 枞阳县| 大悟县| 吉木萨尔县| 巨鹿县| 韶山市| 临汾市| 灌阳县| 特克斯县| 厦门市| 广宁县| 佛山市| 平乐县| 灵川县| 余庆县| 凤冈县| 莲花县| 新巴尔虎右旗| 湘阴县| 桐城市| 德钦县| 垫江县| 晴隆县| 高阳县| 德惠市| 芜湖市| 广饶县| 西峡县| 光泽县| 徐闻县| 土默特左旗| 汝南县|