日志框架&&日志门面
日志框架
常见的日志框架
JUL
java.util.logging包
Log4j
Logback
与Log4j是同一个人的作品
Log4j2
与Log4j同源,基本被重构,性能更好
日志门面
日志门面简单理解
是外观模式(facade pattern)的典型应用。为了消除业务系统与日志框架的对接差异,加入了日志门面这样一个中间层去解耦。如果更换日志框架,则不需要有太大的变动风险。
常见的日志门面
Slf4j
Slf4j只是一个门面服务,真正的日志输出还是依赖于日志框架。
Commons-Logging
spring日志解析
日志桥接
spring-boot-starter-logging的依赖中,已经包含了slf4j对于不同框架的适配依赖包。spring默认使用logback
如下图所示:图中log4j指的是log4j2
日志实现
在引入日志依赖的时候,可能会存在适配器干扰的情况。可以对相关依赖进行排除引入 或者 使用maven的最短路径进行确定适配包;
根据不同的日志系统,可以按如下规则组织配置文件名,就能被Spring正确加载:
- Logback:logback-spring.xml, logback-spring.groovy, logback.xml, logback.groovy
- Log4j:log4j-spring.properties, log4j-spring.xml, log4j.properties, log4j.xml
- Log4j2:log4j2-spring.xml, log4j2.xml
- JDK (Java Util Logging):logging.properties
也可通过在配置文件中对logging.config属性来自定义日志配置文件名
logging.config=classpath:logging-config.xml
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!