获取异常发生所在的类名方法名行数

Posted Zeran

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取异常发生所在的类名方法名行数相关的知识,希望对你有一定的参考价值。

@RestControllerAdvice
@Slf4j
public class GlobalException {
    @ExceptionHandler(ServiceException.class)
    public String serviceExceptionHandler(ServiceException e) {
        StackTraceElement stackTraceElement = e.getStackTrace()[0];
        // 获取类名
        String className = stackTraceElement.getClassName();
        String filePath = stackTraceElement.getFileName();
        int lineNumber = stackTraceElement.getLineNumber();
        String methodName = stackTraceElement.getMethodName();
        log.info("类名:{},文件路径:{},行数:{},方法名:{}", className, filePath , lineNumber, methodName);
        return "类名:" + className + ",文件路径:" + filePath + ",行数:" + lineNumber + "方法名:" + methodName;
    }
}

以上是关于获取异常发生所在的类名方法名行数的主要内容,如果未能解决你的问题,请参考以下文章

C#在控制台输出异常所在的行数

C# - 调用异常时如何获取类名和行号

java中,想记录异常信息,该如何获得发生异常的类名和方法名呢?不要用log4j等。

在android中,数据下标越界,则发生啥异常

获取当前方法名,行号,类名,所在java文件第几行

代码规范