一、前言
对于一个完整的项目而言,通过日志可以随时观察系统运行情况,日志功能是必不可少的,平时开发项目的时候想知道程序运行情况一般可以使用sysout.print(),打印一些关键的代码或者通过debug查看运行状态,使用System.out.println()会出现代码多余,于是市场上了出现许多记录运行状态的框架。
二、日志框架
日志框架分为3部分:日志接口、日志适配器、日志库。
- 日志接口:这些接口都是日志门面,类似JDBC本身自己不干活,就是一套接口规范,让调用者不需要关心日志底层具体是什么框架在干活。
- 日志库:也就是真实干活的人,上图包含几种常见的日志库。
- 日志适配器:它是解决日志接口和日志库接口不兼容的,一般配套的都是兼容的。
三、在SpringBoot使用日志框架
1.Springboot默认抽象接口层使用Slf4j(spring框架是JCL),实现层用Logback。
2.spring-boot-starter-web 包含了 spring-boot-starter ,而 spring-boot-starter 又已经包含了 spring-boot-starter-logging(Slf4j+Logback)。
3.在 application.yml 中,添加日志相关配置。
logging:
# 日志文件配置
file: Demo.log # 日志文件名,保存在当前项目根目录
# 日志级别
level:
controller: info
service: info
mapper: debug
4.使用lombok简化编码
lombok日志实现原理参考:https://blog.csdn.net/qq_51223728/article/details/135854457
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok-maven-plugin</artifactId>
<version>1.18.12.0</version>
<scope>provided</scope>
</dependency>
代码示例:
四、启动项目,访问接口,控制台和日志文件可看到记录