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

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

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

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

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

写完了 我们来测试一下

然后启动项目

然后我们访问这个接口

可以看到 这边一切正常

相关推荐
YuePeng2 分钟前
凌晨 3 点告警群炸了,我用浏览器干了原本 XShell 才能干的事
后端·github
染翰4 分钟前
Nacos 切换 Namespace 后配置不生效、占位符报错终极复盘
java·后端·spring·nacos
terry6004 分钟前
2026图形验证码服务商横向测评|口碑、接入、安全选型全指南
java·大数据·人工智能·web安全·信息与通信·数据库架构
阿坤带你走近大数据15 分钟前
java中泛型不能用基础数据类型
java·开发语言
skywalker_1117 分钟前
SpringBoot速通(实战教学)
java·spring boot·redis·rpc·ssm·mybatis-plus
云絮.29 分钟前
增删改查操作
java·开发语言
阿坤带你走近大数据38 分钟前
Linux中管道符的作用
java·linux·服务器
阿正的梦工坊41 分钟前
【Rust】19-FFI、ABI 与跨语言边界设计
开发语言·后端·rust
fox_lht1 小时前
第十五章 函数式语言:迭代器和闭包
开发语言·后端·学习·算法·rust
码不停蹄的玄黓1 小时前
Spring Boot 实现过滤器(Filter)三种常用方式
java·spring boot·后端