apache common logging是一種log的框架接口,它自己並不實現log記錄的功能,而是在運行時動態查找目前存在的日誌庫,調用相關的日誌函數,從而隱藏具體的日誌實現
log4j是具體的日誌實現,真正負責"寫"日誌的這個功能
common logging自己不是log,你能夠把它看作是一個日誌的接口
而log4j就是日誌的實現
使用common logging方式實現日誌,主要的緣由在於能夠忽略底層的日誌實現,或者說爲之後的日誌實現庫的更換提供透明界面
你能夠考慮下,假設從log4j更換爲logback,勢必要重寫全部本來使用log4j的源代碼,而使用common logging的狀況下,只須要更換jar包,而不須要對源代碼作任何改動