最早你們寫日誌都用log4j,後來做者敢於創新,又搞了個logback,又爲了統一江湖,來了個slf4j,因此目前在代碼中進行日誌輸出,推薦使用slf4j,這樣在運行時,你能夠決定究竟是用log4j仍是logback,根據他們不一樣的配置文件就能夠搞定。html
基本原理就是 slf4j --> adator --> log, 見下圖:api
可是對於以前的比較老的項目,仍是在用log4j輸出,是否有可能將其在不改動代碼的前提下轉到用logback輸出了?app
答案是有的,去掉運行時環境中的log4j的包和配置文件,在環境中添加logback的包和配置文件,關鍵點來了,還有在運行時環境中加入log4j-over-slf4j的包和slf4j-api的包。ui
原理仍是adaptor,application --> log4j-over-slf4j (原來是log4j) --> slf4j-api --> logback,以下:3d
具體參見:https://www.slf4j.org/manual.html日誌
https://www.slf4j.org/legacy.htmlhtm
https://www.tuicool.com/articles/INveIfblog