一、java日志发展线路图
上面涵盖了java世界里主要的日志框架或门面
二、日志门面和框架的区别
-
日志框架技术
JUL、Logback、Log4j、Log4j2
用来方便有效地记录日志信息 -
日志门面技术
JCL、SLF4j
-
为什么要使用日志门面技术:
每一种日志框架都有自己单独的API,要使用对应的框架就要使用对应的API,这就大大的增加了应用程序代码对于日志框架的耦合性。我们使用了日志门面技术之后,对于应用程序来说,无论底层的日志框架如何改变,应用程序不需要修改任意一行代码,就可以直接上线了
。
- 门面
- JCL
- SLF4j
- 框架
- LOG4J (log for java-
Log4j是Apache的一个开源项目
)- JUL (java util logging-
Java原生日志框架
)- Logback:Logback是由log4j创始人设计的又一个开源日志组件。
Logback当前分成三个模块:logback-core,logback- classic和logback-access。
logback-core是其它两个模块的基础模块。
logback-classic是log4j的一个改良版本
。- Log4j2:
Apache Log4j 2是对Log4j的升级,它比其前身Log4j 1.x提供了重大改进,并提供了Logback中可用的许多改进,同时修复了Logback架构中的一些问题
,各个方面都是与Logback及其相似
。被誉为是目前最优秀的Java日志框架。 Spring Boot1.4版本以后就不再支持log4j,所以第二个版本营运而生