Java日志框架的扛把子 - SLF4J - SLF4J的原理和实践

1. Java世界中的日志框架

Java世界中的日志框架

  • 其中,slf4j和jcl属于门面日志框架,而其它的几个则是真正干活的ddidic底层日志框架。
  • 冷知识:其中标红的日志框架,它们的作者是同一人。
  • 不同的日志框架,API接口往往也不一样。

如果直接使用底层的日志框架,会有什么问题?

  • 每种底层日志框架,都有不同的API,配置文件的格式也不一样。
  • 当Java程序要使用这些框架的时候,它就需要为不同的框架写不同的接入代码,此时就会带来一些问题:
  1. 当Java应用程序需要更换日志框架时会非常的麻烦,需要修改大量的代码
  2. 即便你的应用程序只使用一种日志框架,但是你依赖的其它第三方组件使用的是其它的日志框架,如果多种日志框架共存,此时将不得不维护多套配置文件。
  • 此时就引入了门面日志框架

2. 门面日志框架

  • 门面日志框架,本质上就是一套抽象的日志API。
  • 大家约定Java应用程序以及第三方框架都统一使用门面日志框架,然后再使用一个适配层,将门面日志框架和底层的日志框架绑定起来,因为从始至终只有一个底层的日志框架,所以Java应用只需要维护一套配置文件即可。

3. SLF4J日志框架

SLF4JL:全称是SimpleLoggingFacade forJ****ava

  • 翻译成中文,即"Java的简单日志门面",是现在Java生态中最流行的一个门面日志框架

SLF4J的实现原理

相关推荐
Dxy12393102163 小时前
Python 使用正则表达式将多个空格替换为一个空格
开发语言·python·正则表达式
故事和你914 小时前
洛谷-数据结构1-1-线性表1
开发语言·数据结构·c++·算法·leetcode·动态规划·图论
techdashen5 小时前
Rust项目公开征测:Cargo 构建目录新布局方案
开发语言·后端·rust
一 乐5 小时前
电影院|基于springboot + vue电影院购票管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·电影院购票管理管理系统
星空椰5 小时前
JavaScript 进阶基础:函数、作用域与常用技巧总结
开发语言·前端·javascript
恼书:-(空寄5 小时前
JVM GC 日志分析 + 常见 GC 场景 + 实战参数调优
java·jvm
消失的旧时光-19435 小时前
Spring Boot 实战(五):接口工程化升级(统一返回 + 异常处理 + 错误码体系 + 异常流转机制)
java·spring boot·后端·解耦
忒可君5 小时前
C# winform 自制分页功能
android·开发语言·c#
Rust研习社5 小时前
Rust 智能指针 Cell 与 RefCell 的内部可变性
开发语言·后端·rust
leaves falling6 小时前
C++模板进阶
开发语言·c++