Spring MVC拦截器入门


关于拦截器的理解

1、 HandlerInterceptorAdapter:

对请求进行拦截,做一些预处理、返回处理、后处理的操作。

SpringMVC中使用拦截器的方法,继承HandlerInterceptorAdapter类,并根据需求实现其中的preHandle方法(预处理)、postHandle方法(返回处理)、afterCompletion方法(后处理)。

(1)preHandle方法(预处理):

当请求来的时候,先经过applyPreHandle,内部会按照顺序获取所有的拦截器,并依次拦截。当进入拦截器链中的某个拦截器,会执行preHandle方法。

当该方法返回值为false的时候,从当前的拦截器往回执行所有拦截器中的afterCompletion方法,再退出拦截器链。

当该方法返回值为true时,执行下一个拦截器,直至拦截器全部执行完。然后再执行被拦截的controller,之后再进入拦截器链运行所有拦截器的postHandle方法,完成后从最后一个拦截器往回执行所有的afterCompletion方法。

(2)postHandle方法(返回处理)

(3)afterCompletion方法(后处理)

应用:拦截开发者;对加密数据进行解密。

在xml文件中设置:

 

 

2、HandlerMethodArgumentResolver:

在supportsParameter方法中判断请求参数是否HandlerMethodArgumentResolver所支持,方法参数MethodParameter里面包含了请求参数的信息。比如在supportsParameter方法如果请求参数有某个注解,那么该请求可以被HandlerMethodArgumentResolver支持,就会按照resolveArgument中的方法来处理请求参数。

 

xml中配置如下:

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM