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();
}
相关推荐
2分钟速写快排23 分钟前
什么是 RAG?如何用 RAG 实现一个用户记忆?
前端·后端·ai编程
面向Google编程28 分钟前
Apache Iceberg Variant 类型:v3 半结构化数据不再「二选一」
大数据·后端
lhldsg1 小时前
全民健身解决方案小程序开发:从0到1的技术实战
java·数据库·需求分析
jason成都1 小时前
Spring WebFlux 适配达梦新方案|dm‑r2dbc:Netty 异步传输的实验性 R2DBC 驱动
java·后端·spring
泡海椒1 小时前
内置SPI函数库详解:JQuick-Java Builtin工具类实战用法
java·开发语言·python
辰烨chenye1 小时前
LeetCode Hot 100 题解 · 二分篇
java·算法·leetcode
小羊没烦恼!2 小时前
Hello Web API系列教程——Web API与国际化
java·服务器·前端·javascript·php
北岛贰2 小时前
迷茫焦虑期,我做了一个带支付带官网的 AI 聊天虚拟恋人 App
前端·人工智能·后端
小荷才露尖尖角,早有蜻蜓立上头3 小时前
过滤器的4种创建方式
java
大圣编蚕3 小时前
Java ByteArrayInputStream 详解:从入门到实战
java·开发语言·算法