WEB后端周报01

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

本次主要学习了如何在springboot中生成日志文件

一、生成log日志文件

Spring Boot 默认使用 Logback 作为日志框架。Logback 是 SLF4J 的原生实现,提供了高效的日志记录功能。默认情况下日志仅输出到控制台而不输出到文件。

1.日志级别 level

在 Spring Boot 的日志配置中,level 用于设置日志的记录级别。日志级别控制了哪些日志消息会被记录和输出。不同的级别可以帮助你在不同的环境中控制日志的详细程度。以下是各个日志级别的详细解释:

由低到高:ALL,TRACE, DEBUG, INFO, WARN, ERROR,FATAL,OFF

默认级别为INFO

2.实际使用

1.application.yaml 配置文件

logging:
  file:
    name: logs/myapp.log  # 指定日志文件名和路径
  level:
    root: INFO             # 设置根日志级别
    com.it: DEBUG      # 将 'com.example' 替换为你的包名,设置特定包的日志级别
  pattern:
    file: "%d{yyyy-MM-dd HH:mm:ss} - %c{1} - %msg%n"  # 自定义日志格式
    dateformat: '"yyyy-MM-dd HH:mm"' # 定义输出日期格式。

2.利用工厂类获取log对象,用该对象写入日志信息

import org.junit.jupiter.api.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.test.context.SpringBootTest;

@SpringBootTest
public class LogTest {
    // 创建日志对象
    private static final Logger log = LoggerFactory.getLogger(LogTest.class);
    @Test
    public void f1(){
        // 写入日志信息
        log.info("测试信息1");
    }
}

3.运行测试类后查看项目目录,我们可以看到已经生成了与配置文件指定目录logs/myapp.log相同的日志文件
在这里插入图片描述
在这里插入图片描述

二、@Slf4j注解

lombok中,提供了一种注释的方式,能自动创建log对象,让我们便捷地调用

注意:使用lombok推荐jdk17及以下,否则很可能会报错

1.导入lombok

2.编写测试代码并运行

import lombok.extern.slf4j.Slf4j;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;

@SpringBootTest(classes = Main.class)
// @Slf4j注解,作用等效于LoggerFactory.getLogger
@Slf4j
public class LogTest2 {
    @Test
    public void f1(){
        log.info("@slf4j测试");
    }
}

3.再次查看日志文件

在这里插入图片描述

三.sql语句写入日志

这里基于mybatis-plus实现sql语句的写入

1.搭建好数据库查询需要的四层架构

2.修改 application 配置文件

# 连接池配置
spring:
  datasource:
    druid:
      url: jdbc:mysql://localhost:3306/db01
      username: root
      password: 010086
      driver-class-name: com.mysql.cj.jdbc.Driver


mybatis-plus:
  # mybatis-plus 开启日志输出
  configuration:
    log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl
  global-config:
    db-config:
      #所有表的主键id赋值方式改为自增
      id-type: auto
      #表加前缀搜索数据库
      table-prefix: t_
      #指定全局存储逻辑删除状态的列名
      logic-delete-field: deleted
      #指定未删除的状态值
      logic-not-delete-value: 0
      #指定已删除的状态值
      logic-delete-value: 666

logging:
  file:
    name: logs/myapp.log  # 指定日志文件名和路径
  level:
    root: INFO             # 设置根日志级别
    com.it: DEBUG      # 将 'com.example' 替换为你的包名,设置特定包的日志级别
  pattern:
    file: "%d{yyyy-MM-dd HH:mm:ss} - %c{1} - %msg%n"  # 自定义日志格式
    dateformat: '"yyyy-MM-dd HH:mm"' # 定义输出日期格式。

3.测试结果

@SpringBootTest(classes = Main.class)
public class LogTest3 {
    @Autowired
    private UserMapper userMapper;

    @Test
    public void f1(){
        // 执行一条查询语句
        List<User> users = userMapper.selectList(null);
    }
}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值