HandlerExceptionResolver和ExceptionHandler有什么区别

1.使用@ExceptionHandler注解配合 @ControllerAdvice注解使用实现异常处理

2.实现HandlerExceptionResolver接口来管理异常

3.使用@Around注解抓取JoinPoint(切面)的proceed()方法来环绕管理方法抛出的异常

说一下第一点和第二点的区别,为啥很多文章都推荐第一种方式,是因为第一种方案可以使用@ResponseBody注解方法对特定异常进行处理),而使用HandlerExceptionResolver的话如果是ajax的请求,出现异常就会很尴尬,ajax并不认识ModelAndView,结论就是第二种方案只适合ModelAndView或者重定向,不支持返回json,这块在最后的列子中有说明,HandlerExceptionResolver接口中resolveException方法返回体是ModelAndView。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值