【Exception】查看异常出现在具体的文件名/类名/方法名/具体行号

简介: 今天在处理异常日志保存过程中,想要获取到异常抛出在具体在那个文件,哪个类下的哪个方法中的具体第几行,所以具体实现如下try{ Integer adminID = Integer.

今天在处理异常日志保存过程中,想要获取到异常抛出在具体在那个文件,哪个类下的哪个方法中的具体第几行,所以具体实现如下

try{
            Integer adminID = Integer.parseInt(adminId);
            XxAdmin admin = adminRepository.findOne(adminID);
            model.addAttribute("admin",admin);
        }catch (Exception e){
            StackTraceElement stackTraceElement = e.getStackTrace()[0];
            String errorMsg = "文件名:"+stackTraceElement.getFileName()+
                            "\r\n类名:"+stackTraceElement.getClassName()+
                            "\r\n方法名:"+stackTraceElement.getMethodName()+
                            "\r\n抛出异常行号:"+stackTraceElement.getLineNumber()+
                            "\r\n机构ID异常,无法获取本机构信息:"+e;
            System.out.println(errorMsg);
            logger.error(errorMsg);
        }

对于堆栈【先进后出】的数组下标,可以根据自己的需求,看是需要打印出最上层的异常行号还是外层调用它的方法的异常行号!!!

相关文章
|
5月前
|
Windows
qt中编译错误:error: C2001: 常量中有换行符的解决办法
qt中编译错误:error: C2001: 常量中有换行符的解决办法
C --- 自定义一个宏打印当前文件名、函数名、行号
C --- 自定义一个宏打印当前文件名、函数名、行号
281 0
|
6月前
|
Java
java中FileOutputStream流中有参构造方法有无append形参的区别--超详细讲解版
java中FileOutputStream流中有参构造方法有无append形参的区别--超详细讲解版
58 0
pywintypes.com_error: (-2147221005, ‘无效的类字符串‘, None, None)
pywintypes.com_error: (-2147221005, ‘无效的类字符串‘, None, None)
1437 0
pywintypes.com_error: (-2147221005, ‘无效的类字符串‘, None, None)
|
前端开发 Java UED
已解决错误代码: MethodArgumentTypeMismatchException(方法参数类型不匹配异常)
已解决错误代码: MethodArgumentTypeMismatchException(方法参数类型不匹配异常)
242 0
|
Java Android开发
eclipse去掉try-catch,构造方法,get,set方法等里面自动生成的注释
eclipse去掉try-catch,构造方法,get,set方法等里面自动生成的注释
98 0
成功解决pywintypes.com_error: (-2147221005, '无效的类字符串', None, None)
成功解决pywintypes.com_error: (-2147221005, '无效的类字符串', None, None)
成功解决pywintypes.com_error: (-2147221005, '无效的类字符串', None, None)
|
Android开发
eclipse文档注释设置、文件(Files)注释标签、类型(Types)注释标签(类的注释)、字段(Fields)注释标签、构造函数(Constructor)标签
设置注释模板的入口Window->Preference->Java->CodeStyle->CodeTemplate然后展开Comments节点就是所有需设置注释的元素。本文将每一个元素逐一给大家介绍一下。方法(Methods)标签、覆盖方法(Overriding Methods)标签、代理方法(Delegate Methods)标签、getter方法标签、setter方法标签.........
152 1
eclipse文档注释设置、文件(Files)注释标签、类型(Types)注释标签(类的注释)、字段(Fields)注释标签、构造函数(Constructor)标签
|
Java
Java - 获取代码行号、方法名、类名
Java - 获取代码行号、方法名、类名
795 0
|
设计模式 开发框架 .NET
C#一些类名的后缀及其意义
C#一些类名的后缀及其意义
169 0