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

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

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

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

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

写完了 我们来测试一下

然后启动项目

然后我们访问这个接口

可以看到 这边一切正常

相关推荐
A懿轩A1 分钟前
【Java 基础编程】Java 枚举与注解从零到一:Enum 用法 + 常用注解 + 自定义注解实战
java·开发语言·python
等....5 分钟前
MobaXterm操作虚拟机
后端
树码小子9 分钟前
图书管理系统(2)图书列表接口
spring boot·mybatis·图书管理系统
tuokuac17 分钟前
MyBatis-Plus调用getEntity()触发异常
java·mybatis
_但为君故_28 分钟前
优化Tomcat的JVM内存
java·jvm·tomcat
yaoxin52112339 分钟前
328. Java Stream API - 使用 Optional 的正确姿势:为何、何时、如何使用
java·开发语言
再难也得平1 小时前
[LeetCode刷题]49.字母异位词分组(通俗易懂的java题解)
java·开发语言·leetcode
黎雁·泠崖1 小时前
Java 时间类(中):JDK8 全新时间 API 详细教程
java·开发语言
时艰.1 小时前
电商项目支付宝支付实战
java·服务器·网络
Coder_Boy_1 小时前
Java高级_资深_架构岗 核心知识点——高并发模块(底层+实践+最佳实践)
java·开发语言·人工智能·spring boot·分布式·微服务·架构