0
点赞
收藏
分享

微信扫一扫

Spring Boot整合日志

1.日志框架概述

  • 市面上常见的日志框架有很多,它们可以被分为两类:日志门面(日志抽象层)和日志实现

  • 通常情况下,日志由一个日志门面与一个日志实现组合搭建而成,Spring Boot 选用 SLF4J + Logback 的组合来搭建日志系统。

  • SLF4J 是目前市面上最流行的日志门面,使用 Slf4j 可以很灵活的使用占位符进行参数占位,简化代码,拥有更好的可读性。

  • Logback 是 Slf4j 的原生实现框架,它与 Log4j 出自一个人之手,但拥有比 log4j 更多的优点、特性和更做强的性能,现在基本都用来代替 log4j 成为主流。

  • 在这里插入图片描述

2.slf4j(Spring Boot底层默认整合slf4j)

3.日志全局配置

3.1配置日志级别(默认是info)

在这里插入图片描述
在这里插入图片描述

3.2配置日志的输出格式

在这里插入图片描述

在这里插入图片描述

3.3配置日志文件的输出位置

4.logback配置文件(Spring Boot日志的实现层默认使用logback)

这里简单了解一下就可以
除了全局配置文件配置日志以外,我们也可以单独配置日志文件,比如logback的配置如下:

4.1全局配置文件中,设置logback配置文件路径

# 激活开发环境
spring.profiles.active=dev
# 设置日志配置文件位置
logging.config=classpath:logback-config.xml

4.2logback配置

logback的使用

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可以提供有参构造
在这里插入图片描述
在这里插入图片描述

举报

相关推荐

0 条评论