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

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

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

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

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

写完了 我们来测试一下

然后启动项目

然后我们访问这个接口

可以看到 这边一切正常

相关推荐
Linux_cy6 分钟前
服务器管理方案选型:面板 / SSH 客户端 / 桌面型客户端怎么选
java·linux·运维·服务器·ssh·可视化·gmssh
系统集成-鹰翔6 分钟前
ERP接口月度统计少了零单月份:SQLite分组与最近三个月均值排查
javascript·数据库·经验分享·后端
我的xiaodoujiao29 分钟前
Django 权限系统项目实战详细图文教程 3--系统登录功能实现
后端·python·django
可乐_不渴31 分钟前
【Linux】 进程虚拟地址空间
java·linux·javascript
SimonKing33 分钟前
号外号外,Stream-Nexus推送项目支持集群部署了
java·后端·程序员
老王IT33 分钟前
Rust开发环境搭建教程
开发语言·后端·rust
武子康37 分钟前
HunyuanVideo-1.5 跑得更快,先减步数还是开缓存?
人工智能·后端·agent
chenbingjie_c44 分钟前
C++ 模板进阶:从 “会用“ 到 “懂底层“(非类型参数・特化・分离式编译)
c++·后端
vipxieliang44 分钟前
ValidX vs 正则表达式:可读性与维护性对比
java·spring boot
yunyi1 小时前
给桌面客户端做下载加速:从「桶直接公开」到「边缘优先、源站兜底」的三代演进
前端·后端