SpringMVC拦截器
一、 Spring MVC拦截器的使用 一、 什么是拦截器 Spring MVC中的拦截器(Interceptor )类似于 Servlet中的过滤器(Filter ),它主要用于拦截用户请求并作相应的处理。例如通过拦截器可以进行权限验证、记录请求信息的日志、判断用户是否登录等 。 在 SpringMVC中通过实现HandlerInterceptor 接口实现自定义拦截器类。 二、 拦截器的执行流程图 2 、执行具体流程: ( 1 )当客户端方法请求过来后,先调度 Filter 过滤器; ( 2 )过滤器之后执行中央调度器; ( 3 )中央调度器调度 HandlerMapping ; ( 4 ) HandlerMapping 返回处理器执行链交给处理器适配器; ( 5 )中央调度器将处理器执行链交给处理器适配器; ( 6 )中央调度器将先执行拦截器中的 preHandle 方法,进行请求拦截,如果返回 true 则继续执行,返回 false 则请求结束; ( 7 )当拦截器返回 true 时,处理器适配器调度 Handler 执行; ( 8 ) Handler 将执行后的 ModelAndView 交给中央调度器; ( 9 )中央调度器执行拦截其中的 postHandler 方法; ( 10 )拦截器 postHandle 方法执行完毕后,由中央调度器将 ModelAndView