SpringMvc自定义拦截器

SpringMvc也可以使用拦截器对请求进行拦截处理,用户可以自定义拦截器来实现特定的功能,自定义拦截器必须实现HandlerInterceptor接口

          -preHandle():这个方法在业务处理器处理请求之前被调用,在该方法中对用户请求request进行处理。如果程序员决定该拦截器对请求进行拦截后还要调用其它的拦截器,或是业务处理                                器去进行处理,则返回true;如果程序员决定不再调用其它组件去处理请求,则返回false。

          -postHandle():这个方法在业务处理器处理完请求后。

          -afterCompletion():这个方法在DispatcheServlet完全处理完请求后被调用,可以在该方法中进行一些资源清理的工作。

       <!--配置自定义拦截器-->
       <mvc:interceptors>
              <!--拦截所有资源-->
              <bean class="com.seven.interceptors.FirstInterceptor"></bean>
              <!--拦截指定的资源,当访问路径为“/xxx”时,才会被该拦截器拦截-->
              <mvc:interceptor>
                     <mvc:mapping path="/xxx"/>
                     <bean class="com.seven.interceptors.SecondInterceptor"></bean>
              </mvc:interceptor>
       </mvc:interceptors>

  其流程如下:

原文地址:https://www.cnblogs.com/hujingwei/p/5351483.html