關於Log4j、Commons-logging、slf4j

Log4j

強大的日誌輸出工具,可以定義數據格式和輸出方式.不少項目都在用

apache commons-logging

  • 我我的理解爲對log進行統一的封裝,對項目的log輸出進行解耦
  • 經過commons-logging.properties進行配置採用哪種log真正的輸出方式
  • 若是不進行任何配置而且項目存在log4j的類就會使用log4j.不然1.4以上的jdk使用simpleLog
  • 項目不須要關心log是怎麼輸出的, 只須要調用統一的方法就好,能夠隨時更換後臺的log架構

slf4j

重量級的apache

  • Slf4j庫相似於Apache Common-Logging。可是,他在編譯時靜態綁定真正的Log庫。使用Slf4j時,若是你須要使用某一種日誌實現,那麼你必須選擇正確的Slf4j的jar包的集合。架構

  • 好比你要引用slf4j+log4j的組合.jar包方面除了slf4j+log4j基本包, 還須要slf4j-log4j12.工具

可是可以解決一些採用commons-logging會發生的問題, 畢竟commons-logging是運行時纔會檢測到底使用了哪一個log輸出.若是你是要作一個工具包,引入你的工具包的項目不必定可以符合commons-logging的使用條件.日誌

相關文章
相關標籤/搜索