Spring Boot将声明日志步骤抽离出来做一个复用类

上文Spring Boot日志基础使用 设置日志级别中我们写了个比较基本的日志操作

但也随之产生了一个问题

我们这行代码 能不能不写?

具体说 我们不希望每个需要日志的类都声明一个在这 看着太不美观了

我们最简单方法当然是继承

我们找个目录创建一个类 叫 BaseClass

参考代码如下

java 复制代码
package com.example.webdom.controller;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class BaseClass {
    private Class<?> clazz;
    public static Logger log;

    public BaseClass(){
        clazz = this.getClass();
        log = LoggerFactory.getLogger(clazz);
    }
}

这里 我们先将日志对象 和当前类的对象都定义出来 但是不赋值

然后 在构造方法中 那当前的类 赋值之后 传给日志对象

这样 谁继承我们 我们日志套的就是谁 达到了代码复用的效果

然后 我们这边 将原本这个类 声明日志的代码去掉 继承一下我们自己写的这个通用日志类

写完了 我们来测试一下

然后启动项目

然后我们访问这个接口

可以看到 这边一切正常

相关推荐
卷无止境8 分钟前
FastAPI Guard 全解析,从概念到工程落地的实战指南
后端·python
卷无止境13 分钟前
FastAPI Users 全面解析:概念、原理与工程实战
后端·python
茶本无香14 分钟前
Java调用Shell脚本执行SQL数据库操作:从入门到实战
java·sql·shell
程序员爱钓鱼18 分钟前
Go switch 详解
后端·面试·go
程序员爱钓鱼21 分钟前
Rust Struct结构体详解:定义自己的复杂数据类型
后端·面试·rust
风流 少年25 分钟前
Spring AI 2.0:MCP
java·后端·spring
北斗落凡尘1 小时前
LangGraph 入门实战(7)
后端·langchain
天疆说1 小时前
01 硬件选型与 llama.cpp 部署:4× RTX 5880 Ada 跑 DeepSeek-V4-Flash
java·redis·llama
uzong1 小时前
业务新老系统数据迁移-负责人经验总结和复盘
后端