锁定老帖子 主题:异常捕获的切面--java需要优雅吗?
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-12-10
不是说统一处理
fjlyxx 写道 huangking 写道我也支持bloodrate兄的观点... DAO/Service/Controller都应该有各自不同的异常抛出.. 能处理则处理,不能处理则抛出,这里抛出不一定直接throw 当前捕获的异常,可以抛出自定义的异常...当然顶层需要一个统一的处理,处理那些没有被处理掉的异常 不是说统一处理,而是你要让你的调用者知道你出异常了。你可以发出一个通告给你的调用者你没有按照预定的规则进行处理。 特别是在多线程中如果你不通告回掉业务的线程业务处理出问题了那么这条线程就可能永远挂起了。 是通告不是一定要统一处理。 通知机制,是不是说还要额外的代码来实现和管理呢?那通知的内容呢,包括类型等待吗,else还有? 我还有个问题: 当外侧调用者需要知道被调用的函数具体是什么异常,但是内部的异常是通过finally抛出的模糊异常,或者是某种类型IOexception的大异常,咋办? |
|
返回顶楼 | |
发表时间:2008-12-10
异常的抛出其实和你业务框架有关系。没有一定的规则。如果你的异常没有必要要上级业务知道那你完全可以处理掉这个异常,但是如果你的异常会影响上级的处理那么你就得通知它。
|
|
返回顶楼 | |