LogUtils工具类

java 复制代码
/**
 * @description:
 * @author: 
 * @create: 2023/10/23 19:52
 **/
public class LogUtils {

    public static void enter() {
        StackTraceElement[] stackTrace = Thread.currentThread().getStackTrace();
        StackTraceElement stackTraceElement = stackTrace[stackTrace.length - 2];
        String callerMethodName = stackTraceElement.getMethodName();
        // 判断是否不是lambda表达式
        if (callerMethodName.startsWith("lambda$")) {
            stackTraceElement = stackTrace[stackTrace.length - 1];
            callerMethodName = stackTraceElement.getMethodName();
        }
        try {
            Class<?> aClass = ClassUtils.forName(stackTraceElement.getClassName(), null);
            LoggerFactory.getLogger(aClass).info("Enter Method: {}", callerMethodName);
        } catch (ClassNotFoundException ignored) {
        }
    }
}

测试类

java 复制代码
public static void main(String[] args) {
   Runnable runnable = () -> LogUtils.enter();
   runnable.run();
}
相关推荐
Whisper_Sy6 小时前
Flutter for OpenHarmony移动数据使用监管助手App实战 - 网络状态实现
android·java·开发语言·javascript·网络·flutter·php
乂爻yiyao6 小时前
1.1 JVM 内存区域划分
java·jvm
Bony-6 小时前
Go语言垃圾回收机制详解与图解
开发语言·后端·golang
没有bug.的程序员7 小时前
Spring Cloud Eureka:注册中心高可用配置与故障转移实战
java·spring·spring cloud·eureka·注册中心
CryptoRzz7 小时前
如何高效接入日本股市实时数据?StockTV API 对接实战指南
java·python·kafka·区块链·状态模式·百度小程序
码农水水7 小时前
中国邮政Java面试被问:容器镜像的多阶段构建和优化
java·linux·开发语言·数据库·mysql·面试·php
若鱼19197 小时前
SpringBoot4.0新特性-BeanRegistrar
java·spring
好好研究8 小时前
SpringBoot - yml配置文件
java·spring boot·spring
学海无涯书山有路9 小时前
Android FragmentContainerView 新手详解(Java 版)
android·java·开发语言
XiYang-DING9 小时前
【Java SE】数据类型、变量、类型转换、运算符以及程序逻辑控制
java·开发语言