文章目录
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/75e3faa54e1a7065c1840d9393585bb9.png)
1.概述
在具体的SSM项目开发中,由于Controller层为处于请求处理的最顶层,再往上就是框架代码的。
因此,肯定需要在Controller捕获所有异常,并且做适当处理,返回给前端一个友好的错误码。
不过,Controller一多,我们发现每个Controller里都有大量重复的、冗余的异常处理代码,很是啰嗦。
能否将这些重复的部分抽取出来,这样保证Controller层更专注于业务逻辑的处理,
同时能够使得异常的处理有一个统一的控制中心点。
我们先来介绍一下今天的主角,分别是 @ControllerAdvice 和 @ExceptionHandler 。
-
@ControllerAdvice
相当于 controller 的切面,主要用于@ExceptionHandler, @InitBinder 和 @ModelAttribute
,使注解标注的方法对每一个 controller 都起作用。默认对所有 controller 都