spring5日志体系

spring4日志底层使用的是log4j。spring5的日志默认使用的是jul(java.util.logging)
spring5日志体系_第1张图片

spring5日志体系_第2张图片
主流的log技术名词
1,log4j
spring5日志体系_第3张图片
可以不需要依赖第三方技术,直接记录日志
2,jcl
spring5日志体系_第4张图片
jcl它不直接记录日志,而是通过第三方记录日志(jul)
如果使用jcl记录日志,在没有log4j的情况下,是用log4j 如果有log4j 则使用log4j

jcl commons-logging 是apache公司开发的一个抽象日志通用框架,本身不实现日志,但是提供了记录日志的抽象方法即接口(info,debug,error…),底层通过一个数组存放具体日志框架的类名,然后循环数组依次去匹配这些类名 在程序当中是否被依赖了,如果找打被依赖的它可以直接使用
spring5日志体系_第5张图片
spring5日志体系_第6张图片
spring5日志体系_第7张图片
Slf4j
引入slf4j的pom依赖
spring5日志体系_第8张图片
写测试类,并启动
spring5日志体系_第9张图片
发现程序报错 并没有打印日志
spring5日志体系_第10张图片
需要添加绑定器,才可正常打印,因为slf4j自己也不直接打印日志,而是借助第三方日志框架打印日志(这里是绑定jul)
spring5日志体系_第11张图片
spring5日志体系_第12张图片
绑定器是包含了实现和绑定器本身的,所以有时候不需要原依赖
spring5日志体系_第13张图片
spring5日志体系_第14张图片
如果我们不同的项目中的日志 使用不同的框架输出的,我们可以使用桥接器 桥接到slf4j统一日志打印

你可能感兴趣的:(日志)