本文仅仅是理清各种日志框架之间的关系和相互间转换关系,顺带附上springboot默认的Slf4j+Logback配置。具体各框架项目中如何使用,网上太多了,也写得更好。
1. 常用日志组件
java开发常用的日志组件有JCL 、 JUL、 SLF4j、Log4j、 Log4j2 、 Logback、 jboss-loggin(不面对大众,不考虑) 等,一般日志是配套出现的,一般是由 一个日志门面(设计有点像JDBC) 和 一个日志实现 配套使用,也有一些可单独使用。那么 组成以下结构:
序号 | 日志门面(类似JDBC) | 日志门面配合日志实现的桥接包 | 日志实现 | 所属企业 | 备注 |
1 | Slf4j | logback-classic.jar | Logback | qos | 不可单独使用。 |
2 | slf4j-jdk14.jar | Jul (Java Util Logging) | java官方 | 可单独使用,太简单一般不用。 | |
3 | slf4j-jcl.jar | JCL(Jakarta Commons Logging) | Apache | 可单独使用 | |
4 | slf4j-log4j12.jar | Log4j | Apache | 可单独使用 | |
5 | log4j-slf4j-impl.jar | Log4j2 | Apache | 可单独使用。不是log4j的升级,不兼容log4j。 |