logback和log4j區(qū)別?
log4j
log4j可以控制日志信息輸送的目的地是控制臺、文件、GUI組件,甚至是套接口服務器、NT的時間記錄器、UNIX Syslog護進程等。
可以控制每一條日志信息的級別,能夠更加細致的控制日志的生產(chǎn)過程,可以通過一個配置文件來靈活的進行配置,不需要修改應用代碼。
logback
是由log4j創(chuàng)始人設計的又一個開源日志組件。logback當前分成三個模塊:logback-core,logback- classic和logback-access。logback-core是其它兩個模塊的基礎模塊。logback-classic是log4j的一個 改良版本。此外logback-classic完整實現(xiàn)SLF4J API使你可以很方便地更換成其它日志系統(tǒng)如log4j或JDK14 Logging。logback-access訪問模塊與Servlet容器集成提供通過Http來訪問日志的功能。
SLF4J所提供的核心API是一些接口以及一個LoggerFactory的工廠類。從某種程度上,SLF4J有點類似JDBC,不過比JDBC更簡單,在JDBC中,你需要指定驅(qū)動程序,而在使用SLF4J的時候,不需要在代碼中或配置文件中指定你打算使用那個具體的日志系統(tǒng)。如同使用JDBC基本不用考慮具體數(shù)據(jù)庫一樣,SLF4J提供了統(tǒng)一的記錄日志的接口,只要按照其提供的方法記錄即可,最終日志的格式、記錄級別、輸出方式等通過具體日志系統(tǒng)的配置來實現(xiàn),因此可以在應用中靈活切換日志系統(tǒng)。