一、简述SpringMVC的拦截器
SpringMVC的拦截器需要实现HandlerInterceptor,用于拦截控制器方法的执行。
- 过滤器Fillter作用在浏览器和Servlet之间;拦截器Interceptor作用在DispatcherServlet和控制器方法之间。
浏览器发送请求,经过过滤器的过滤将请求发送到服务器;服务器使用前端控制器处理请求,前端控制器匹配相应的控制器方法。拦截器采用AOP思想,通过反射机制作用于控制器周围,通常用来实现登录处理。
二、多个拦截器的执行顺序
单个拦截器的执行顺序如下图:
总结:
- 拦截器的
perHandle()方法
顺序执行- 拦截器的
postHandle()方法
和afterCompletion方法
逆序执行。- 这里说的顺序和倒序是指SpringMVC配置文件中的拦截器的配置顺序。