在我們系統(tǒng)中,如果某一行代碼報錯了,我們打印日志的時候卻不知道具體報錯行號,報錯信息等等。
如何才能打印報錯行號呢?
我們拿到Exception對象后,首先要拿到錯誤的堆棧信息,可以通過下面方法拿到:
StackTraceElement stackTraceElement= e.getStackTrace()[0];
拿到堆棧信息后,那么我們就可以獲取具體的報錯信息了.
//報錯全路徑類名
stackTraceElement.getClassName();
//報錯方法
stackTraceElement.getMethodName();
//報錯行號
stackTraceElement.getLineNumber();
通過拼接,打印詳細(xì)報錯信息
try {
//業(yè)務(wù)代碼
} catch (Exception e) {
e.printStackTrace();
StackTraceElement stackTraceElement= e.getStackTrace()[0];
System.out.println("系統(tǒng)出錯,錯誤信息:"+e.toString()+" at "+stackTraceElement.getClassName()+"."+stackTraceElement.getMethodName()+":"+stackTraceElement.getLineNumber());
}
打印效果:文章來源:http://www.zghlxwxcb.cn/news/detail-532710.html
2023-03-23 11:00:45:系統(tǒng)出錯,錯誤信息:java.lang.NullPointerException at com.util.MyUtil.doUpdate:525
以上可以幫助我們快速定位系統(tǒng)異常問題,并且打印出相關(guān)報錯類型,類名,方法以及報錯行號。文章來源地址http://www.zghlxwxcb.cn/news/detail-532710.html
到了這里,關(guān)于try catch捕獲異常并打印報錯行號等信息的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!