bei*_*man 8 java hibernate spring-mvc
我在Spring + hibernate中开发了一个Web应用程序,持续了几个月.我一直严重缺少的是异常处理.
我想知道处理异常的最佳方法和实践吗?我脑子里有一些问题,不能涵盖异常处理的所有方面,例如:
1.是否做出检查或未检查的例外?如何决定?
2.如何处理以及如何处理Controller中生成的异常.
3.关于在服务层和DAO层中生成的异常,应该只在该层处理还是应该转移到控制器层?
4.既然有许多例外情况,我怎么能准备好处理将来可能发生的事情?
5.如何向UI或浏览器显示相关消息?
请建议或提供好博客的链接?
jax*_*jax 12
@ExceptionHandler方法上的注释来处理从@RequestMapping方法生成的异常.throw 它们可以决定最佳响应,除非服务方法可以从异常中恢复并继续正常处理.throw那些(您可以将实际异常作为原因传递ie throw new MyCustomException("my message", e))@ExceptionHandler方法可以决定返回给用户的视图,也可以在您的配置中配置自定义错误页面web.xml一般不要使用已检查的异常,您不希望对流控制使用异常,旁边大多数异常都是不可恢复的,那么您打算做什么?看到这个相关的答案.
关于异常处理,弹簧具有的HandlerExceptionResolver对那.您可以将其用于一般异常处理.对于更细粒度的控制,您可以在控制器中注释方法,@ExceptionHandler这些方法将仅处理从该控制器发生的异常.(虽然使用新的@ControllerAdvice,您也可以注册全局@ExceptionHandler方法.
在某些情况下,您可能希望在控制器中捕获异常并在控制器内处理它们(例如,向用户显示警告).
作为最后的手段,您始终可以error-page在web.xml中配置非常通用和广泛的异常处理.
有关更多信息,您可能需要查看"Spring参考指南"中的异常处理部分.
| 归档时间: |
|
| 查看次数: |
9146 次 |
| 最近记录: |