日志体系简介
发布日期:2022-07-08 02:55:53 浏览次数:29 分类:技术文章

本文共 1014 字,大约阅读时间需要 3 分钟。

在这里插入图片描述

2006年Log4j的作者推出新的日志标准接口规范Slf4j(Simple Logging Facade for Java),也可以称为日志门面,用来对标JCL,它比JCL更优秀。

在这里插入图片描述

Slf4j之后的项目统一日志标准的方式:假设项目D、E都使用Slf4j接口,首先在代码层已经统一了,如果要做到日志标准统一也十分简单,直接替换日志标准库与对应的桥接包即可,就如下图所示:

在这里插入图片描述

Slf4j之前的项目统一日志标准的方式:假充把A、B、C项目都统一成Log4j日志输出,只需要引入Slf4j与相关的桥接包,再引入具体的日志标准库,比如Log4j,就完成了3个项目的统一日志标准,对代码层是零入侵,如下图所示:

在这里插入图片描述

2006年,基于Slf4j接口推出了Logback日志标准库,做为Slf4j接口的默认实现,Logback在功能完整度和性能上超越了所有已有的日志标准库。

2012年,Apache推出Log4j2(不兼容Log4j),Log4j2全面借鉴Slf4j+Logback:Log4j2不仅仅具有Logback的所有特性,还做了分离设计,分为log4j-api和log4j-core,log4j-api是日志接口,log4j-core是日志标准库,并且Apache也为Log4j2提供了各种桥接包……

到目前为止Java日志体系被划分为两大阵营,分别是Apache阵营和Ceki阵营,如下图所示:

![在这里插入图片描述](https://img-blog.csdnimg.cn/2 《大厂前端面试题解析+Web核心总结学习笔记+企业项目实战源码+最新高清讲解视频》无偿开源 徽信搜索公众号【编程进阶路】 0210511124105260.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2xpYW5naGVjYWk1MjE3MTMxNA==,size_16,color_FFFFFF,t_70)

Spring框架内部使用JCL做日志输出标准,项目使用Slf4j + Logback做日志输出标准。之所以能够让项目内的Spring保持统一日志输出标准就是通过引入正确的Slf4j桥接包,去除无用的日志组件实现的。

在这里插入图片描述

[](()推出时间


| 日志 | 推出时间 |

| — | — |

转载地址:https://blog.csdn.net/m0_70274530/article/details/124480510 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:日志冲突解决
下一篇:日志中常见的异常(Exeption)

发表评论

最新留言

表示我来过!
[***.240.166.169]2024年02月29日 13时47分51秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

spring java配置_Spring Java配置要点 2019-04-21
共享内存 java_java - Java客户端-服务器编程:客户端之间的共享内存 - 堆栈内存溢出... 2019-04-21
java布局管理器空布局_Java图形化界面设计——布局管理器之null布局(空布局)... 2019-04-21
java gas station_LeetCode – 774. Minimize Max Distance to Gas Station 2019-04-21
java项目无法加载到tomcat_eclipse+tomcat添加项目进来无法启动tomcat 2019-04-21
后缀树建立 java_实用算法实现-第 8 篇后缀树和后缀数组 [2 最长公共子串] 2019-04-21
java网络编程期末试题_java网络编程面试题【其中一小部分】 2019-04-21
estore java_estore2 - WEB源码|JSP源码/Java|源代码 - 源码中国 2019-04-21
java如何做表单校验_微信小程序实现表单校验功能 2019-04-21
matlab dwt2(),MATLAB小波变换指令及其功能介绍(超级有用) 2019-04-21
php sequelize,egg.js整合数据库ORM框架Sequelize 2019-04-21
php同时打开2个数据库,thinkphp3.2同时连接两个数据库的简单方法 2019-04-21
centos 开发php扩展,centos 安装php扩展redis 2019-04-21
php+跑buth,php 中函数获取可变参数的方法, 这个语法有点像 golang 语言中的 2019-04-21
cms 单点登录 php,Yii2 中实现单点登录的方法 2019-04-21
oracle自己运行,创建Oracle自动执行Job 2019-04-21
oracle报错00020,oracle启动 ORA-00020: maximum number of processes (%s) exceeded错误 2019-04-21
chmod 赋权所有_chmod 权限 命令详细用法 2019-04-21
html代码翻译_[译]您知道 HTML 的键盘标签吗? 2019-04-21
html抽奖代码_JavaScript高手之路:封装抽奖效果 2019-04-21