第(3)种,@ExceptionHandler注解
@Controller public class TestExceptionHandlerController { @ExceptionHandler({ MyException1.class }) public String exception(MyException1 e) { return "/error/e1"; }@RequestMapping("/marry") public void test() { throw new MyException1("没钱!"); } }缺点:@ExceptionHandler的方法,必须和可能抛异常的方法在一同个Controller下。(不建议使用)
3、结合实际项目中,在处理异常的统一返回时,会将一些自定义的异常或者扩展交给框架,将http返回码的映射交给容器,因为http返回码更外层,有些到不了框架,有些对于框架来说就不是一个异常(比如404之与Spring MVC)。框架是运行在容器里的,当框架优先拿到异常并做了返回处理,容器就不会再进行映射。