一、在介绍SpringMVC拦截器前,先介绍一下SpringMVC的流程。
1.用户发送请求,经过前端控制器DispacherServlet(Controller的核心)将url交给处理器映射器HandlerMapping处理
2.处理器映射器HandlerMapping处理url,返回HandlerExecutionChain(可能包含拦截器,一定包含自定义的Controller(handler))
3.前端控制器将Controller交给处理器适配器HandlerAdapter处理,处理完成后,返回MV对象(ModelAndView)
4.前端控制器将MV交给视图解析器处理ViewResolver,处理的过程:将MV拆分成Model和view两个对象,并且将model渲染到view视图上,并且将view返回给前端控制器。
5.最后,前端控制器将视图响应给用户。
二、SpringMVC拦截器的两种实现方式
(1)自定义的Interceptor类要实现了Spring的HandlerInterceptor接口。
public class LoginInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) {
return true;
}