java全局异常捕获 在JAVA中捕获异常后throw自定义异常是不优雅的吗?
浏览量:2125
时间:2021-03-12 21:21:24
作者:admin
在JAVA中捕获异常后throw自定义异常是不优雅的吗?
事实上,这种方法在很多框架中都有使用
1。Rethrow
自定义异常,用于更好地隔离异常,识别异常类型、ID、自定义消息和日志
2。对第三方库的异常进行打包和抽象,以保持与框架异常定义的一致性,方便框架处理不同的异常
3。Restful在控制层有两种异常:一种是预期的,另一种是可预测的。这种异常需要捕获并“尝试修复”。例如,在查询用户信息RPC的过程中,存在异常,包括500ah和404ah。对于客户端,基本上不需要重试,这可以通过一个明确的错误代码来通知。相反,在超时的情况下,可以通知客户端稍后再试,不同的错误代码可以引导客户端进行不同的操作。另一种情况是控制层本身不考虑。在这种情况下,盲目的尝试/捕捉没有多大意义。它通常在框架级进行统一处理,包括记录异常信息和优雅的返回失败。
最后,对于try/catch的使用,我们并不意味着我们看不到异常,但我们更多地考虑捕获后我可以做什么,以及我是否可以尝试解决此问题。如果没有,我们可以把它扔到上层,记录并报警。如果我们不把这个问题想清楚,就很容易形成一个禁忌(吞下例外)。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。