zoukankan      html  css  js  c++  java
  • 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中配置如下:

  • 相关阅读:
    Arduino uno 教程~持续更新~
    Arduino uno LED灯实验
    Arduino uno 引脚说明
    面包板的使用
    数量经济学推荐的Julia教程
    已知一点经纬度和距离,方位角;求另外一点的经纬度
    a recipe kindly provided by Dimas for kikuchi
    发现了拯救“文献多的一团麻”的工具
    matlab中diff的用法
    matlabR2017安装
  • 原文地址:https://www.cnblogs.com/dorra/p/9299053.html
Copyright © 2011-2022 走看看