范围图
简单范围图
简单执行流程
-
进入tomcat
-
到达过滤器
执行preHandle方法,这里要执行具体的过滤行为
当通过之后,会执行接下来的过滤器中的过滤行为,假如没有过滤器了,就会进入DispatchServlet中的doService方法 -
到达Servlet,进入DispatchServlet中的doService方法
-
进入拦截器中的preHandle方法
- preHandle返回true的情况下,进入到具体的controller中
- 假如没有出异常,代码正常执行,会进入到拦截器中的postHandle
- 假如出现异常时,,就不会进入拦截器中的postHandle,而会进入到全局异常处理器中
- 紧接着进入拦截器的afterCompletion方法
- 然后再执行滤器之后的代码