zoukankan      html  css  js  c++  java
  • Struts2拦截器总结

    拦截器的本质:

      拦截器就是一个类,一个实现了超级接口Interceptor的类。Interceptor接口里定义了三个方法 init(),destory(),intercept()。其中inercept()是核心方法,该方法的参数是invocation,它的类型是ActionInvocatio接口,该接口定义了拦截的核心方法invoke(); 

      拦截器体现的面向切面编程思想(AOP),在目标代码执行之前或执行之后插入必要的辅助业务,来降低系统的耦合度。Struts2拦截器的目标代码就是Action。

    使用拦截器的步骤:

      1.先创建一个实现Interceptor接口的类。该类是拦截器执行的核心代码,在目标对象的前后执行。

        要注意的是Interceptor是超级接口,它实现了三个方法。另外你也可以继承AbstractInterceptor抽象类,只需实现interceptor()方法就行了。另外还可以继承MethodFilterInterceptor抽象类,只需实现doIntercept()方法。

      2.(要点)在Struts.xml的package中配置拦截器:首先声明拦截器,然后把自定义的拦截器放入拦截器栈中。要想对哪个Action进行拦截,在action标签里引用配置的拦截器就行了。

        在配置拦截器时很容易出错,收集以下资料参考:

          http://www.blogjava.net/zzzlyr/archive/2009/10/12/297998.html

    拦截器的执行顺序:

      之所以叫拦截器栈就说明了它的执行顺序,假如一个拦截器栈里有a,b,c三个拦截器,则它们的执行顺序是a,b,c,action,c,b,a。   

      

        

  • 相关阅读:
    2020年4月13日
    2021年4月12日
    梦断代码阅读笔记02
    Shell基本命令
    远程链接Linux
    Linux文档与目录结构
    VMware与Centos系统安装
    linux 第一天
    day88 Vue基础
    python 生成随机验证码
  • 原文地址:https://www.cnblogs.com/wangerxiansheng/p/4146183.html
Copyright © 2011-2022 走看看