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);
    }
}

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

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

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

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

写完了 我们来测试一下

然后启动项目

然后我们访问这个接口

可以看到 这边一切正常

相关推荐
mzhan0174 分钟前
Linux: compare的直观性
java·linux·服务器
mask哥9 分钟前
力扣算法java实现汇总整理(下)
java·算法·leetcode
平凡但不平庸的码农15 分钟前
Go 错误处理详解
开发语言·后端·golang
小陈的进阶之路15 分钟前
Python系列课(2)——判断
java·前端·python
刚子编程18 分钟前
C# Join 进阶:GroupJoin、性能对决与自定义比较器
java·servlet·c#·join
漫随流水24 分钟前
IDEA快速生成构造方法(空参、带参)
java·intellij-idea
spencer_tseng39 分钟前
Spring Boot 3.0+ jakarta.*
java·spring boot
Bat U1 小时前
JavaEE|文件操作和IO
java·开发语言
DavidSoCool1 小时前
Spring AI Alibaba ReactAgent 调用Tool 实现多轮对话
java·人工智能·spring·多轮对话·reactagent
PRINT!1 小时前
个人财富全景管理系统 AssetMe【内容均为AI制作】
spring boot·信息可视化·ai编程