SpringBoot使用@Slf4j注解实现日志输出

@Slf4j 是 Lombok 库中的一个注解,它极大地简化了日志记录的代码。通过使用这个注解,Lombok 会自动在你的类中注入一个静态的日志对象。通过在类上添加 @Slf4j 注解后,可以直接在方法中使用 log.info() 等方法进行日志打印。

1、安装相关依赖

(1)添加 Maven 依赖

添加 Lombok 依赖:首先,确保项目中已经添加了 Lombok 的依赖。如果使用的是 Maven,可以在 pom.xml 文件中添加如下依赖:

XML 复制代码
<!-- Lombok 的依赖 -->
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.34</version>
    <scope>provided</scope>
</dependency>

<!-- slf4j 的依赖,可以使用 @Slf4j注解  -->
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-log4j12</artifactId>
    <version>1.7.25</version>
</dependency>

(2)安装 IDEA 插件

打开 IDEA,单击 IDEA 菜单栏"File → settings" 选项,在弹出的对话框中选择"Plugins"(插件)选项,在弹出的插件窗口的搜索栏中输入:Lombok,在搜索结果中找到 Lombok,单击"install"按钮完成安装。在安装完成后,在使用 Lombok 前需要重启 IDEA。

2、@Slf4j 注解的使用

java 复制代码
package com.pjb.pm.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.pjb.pm.entity.UserInfo;
import com.pjb.pm.mapper.UserMapper;
import com.pjb.pm.service.IUserService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;

/**
 * 用户信息服务类
 * @author pan_junbiao
 **/
@Slf4j  //第一步:添加 @Slf4j 注解
@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, UserInfo> implements IUserService
{
    /**
     * 查询用户信息
     */
    @Override
    public UserInfo getUserInfo(Long userId)
    {
        // 第二步:使用 Logger 日志
        log.trace("Trace Level");
        log.debug("Debug Level");
        log.info("Info Level");
        log.warn("Warn Level");
        log.error("Error Level");

        // Logger 日志中使用 {} 占位符
        log.info("[开始执行]查询用户ID为:{},的用户信息", userId);
        UserInfo userInfo = this.getById(userId);
        log.info("[完成执行]用户信息为:{}", userInfo);
        return userInfo;
    }

}
相关推荐
码农小苏245 分钟前
排序--希尔排序
java·算法·排序算法
颜淡慕潇25 分钟前
【数据库】在 Java 中使用 MongoDB 进行数据聚合
java·数据库·sql·mongodb
Passion不晚40 分钟前
Java NIO 全面详解:掌握 `Path` 和 `Files` 的一切
java·后端·nio
林小果142 分钟前
NIO基础
java·网络·nio
DavidSoCool42 分钟前
java socket bio 改造为 netty nio
java·nio
J老熊1 小时前
Spring Boot 实现动态配置导出,同时支持公式和动态下拉框渲染和性能优化案例示范
java·spring boot·后端·面试·性能优化·系统架构
胡耀超1 小时前
序列化与反序列化深入分析:UUID案例的实践与JSON转换对比
java·json·uuid·序列化·反序列化
奔跑的毛球1 小时前
从 Java 8 到 Java 17:你真的会用 Stream API 吗
java·后端
Jay的小提琴1 小时前
第十章 XML
android·xml·java·开发语言·笔记·idea
LearnTech_1231 小时前
【学习笔记】手写 Tomcat 六
java·笔记·学习·tomcat·手写tomcat