1.视图解析
- 以重定向为例
- 如果返回字符串
- 则会调用视图解析器thymeleafResolver
- 判断返回值为普通字符串,返回thymeleafView
- 调用其render方法,拼接直接访问
2.异常处理
404
@ControllerAdvie 处理异常类+ @ExceptionHandler
- @ControllerAdvie 处理异常类+ @ExceptionHandler 方法处理异常类型
- 即在异常解析器中的第一个
- ExceptionHandlerExceptionResolver能够给处理(判断是否有标志@ExceptionHandler的方法 )
- 调用该方法返回字符串放入mv
- 执行流程等于正常方法
抛出自定义异常@ResponseStatus
- 即在异常解析器中的第二个
- ResponseStatusExceptionResolver判断当前异常是否有@ResponseStatus注解,
- 将注解的状态码解析,response.sendError()
- 此时tomcat发送的/error请求(最终仍然被BasicErrorController处理)
框架异常
- 即在异常解析器的第三个
- DefaultHandlerExceptionResolver 判断是否为springmvc底层异常
- sendError