1.日志框架概述
- 市面上常见的日志框架有很多,它们可以被分为两类:日志门面(日志抽象层)和日志实现
- 通常情况下,日志由一个日志门面与一个日志实现组合搭建而成,Spring Boot 选用 SLF4J + Logback 的组合来搭建日志系统。
- SLF4J 是目前市面上最流行的日志门面,使用 Slf4j 可以很灵活的使用占位符进行参数占位,简化代码,拥有更好的可读性。
- Logback 是 Slf4j 的原生实现框架,它与 Log4j 出自一个人之手,但拥有比 log4j 更多的优点、特性和更做强的性能,现在基本都用来代替 log4j 成为主流。
2.slf4j(Spring Boot底层默认整合slf4j)
1️⃣slf4j(Simple Logging Facade for java)中文意思是简单日志门面,是获取日志的标标准接口。
2️⃣slf4j的官网地址:https://www.slf4j.org/
3️⃣slf4j的日志级别分为:trace<debug<info<warn<error, 默认级别是info![]()
3.日志全局配置
3.1配置日志级别(默认是info)
3.2配置日志的输出格式
3.3配置日志文件的输出位置
我们可以看到在D盘确实可以找到对应的日志文件的输出位置,而且日志信息是追加的![]()
4.logback配置文件(Spring Boot日志的实现层默认使用logback)
这里简单了解一下就可以
除了全局配置文件配置日志以外,我们也可以单独配置日志文件,比如logback的配置如下:
4.1全局配置文件中,设置logback配置文件路径
# 激活开发环境
spring.profiles.active=dev
# 设置日志配置文件位置
logging.config=classpath:logback-config.xml
4.2logback配置
5.整合Lombok
## 5.1概述
- Lombok简化了实体类中大量的getter/setter、toString、hashCode、equals等方法
- 在运行过程中,Lombok自动生成相应方法
- Lombok通过注解的方法,注入了日志对象log
- 官网地址:https://www.projectlombok.org/
## 5.2插件安装
5.3Lombok的使用
在创建Spring Boot项目的时候,勾选Lombok
然后构建项目的时候,会自动在pom.xml中添加lombok依赖
如果我们相要使用有参构造的话,这个时候是不可以的,因为没有提供对应的有参构造方法,为了解决这个情况,我们可以使用注解
@Data
@AllArgsConstructor //帮我们生成有参构造
@Component
public class Book {
private String name;
private Double price;
}
但是,我们也可以发现,使用@AllArgsConstructor提供了有参构造后,无参构造就不会创建,但是有时候我们是需要使用无参构造,比如说实体类在spring容器中的自动注入就必须提供无参构造
@NoArgsConstructor可以提供无参构造
@AllArgsConstructor可以提供有参构造