代码规范之e.printStackTrace()

不要使用e.printStackTrace()

  • 1.书写方式
    • 1.1错误的书写
    • 1.2正确的书写
  • 2.e.printStackTrace()的好处和坏处
    • 2.1.好处
    • 2.2.坏处

1.书写方式

1.1错误的书写

try {
	xxxx代码块	
}catch (Exception e) {
	e.printStackTrace();
	/*e.printStackTrace()将错误信息全部打印至控制台上展示*/
}
一般我们习惯直接try/catch捕获错误异常,但是这是错误的,
因为printStackTrace()方法实际上毫无意义,他只是打印到控制台,还会占用很大的内存

1.2正确的书写

try {
	xxxx代码块	
}catch (Exception e) {
	log.error("xxx错误,阿巴阿巴xxx", e.getMessage());
	/*也可以e.getCause().getMessage()
	在getMessage()获取异常名称的基础上,
	添加了异常原因
	e.getMessage()是将错误打印至error.log日志文件中
	*/
}

2.e.printStackTrace()的好处和坏处

2.1.好处

e.printStackTrace()会将错误信息全部打印在控制台

2.2.坏处

e.printStackTrace()虽然将错误信息打印在了控制台,但是,太多了,一个异常(错误)可能打印几十行。然后大量的字符占用大量的内存,可能会堵塞其他的一些请求啊什么的。

大佬带的e.printStackTrace()的分析

你可能感兴趣的:(随笔知识点)