zoukankan      html  css  js  c++  java
  • struts2学习之基础笔记4

     拦截器

    1.自定义拦截器类,必须继承AbstractInterceptor类(抽象类)

    重写public String intercept (ActionInvocation arg0)

    2.在Struts.xml文件中创建拦截器对象,格式: 

    <package>

    <interceptors>

    <interceptor name=拦截器名 class=拦截器类全名>

    [<param name=成员变量名 >值</~~>]

    </~~>

    </~~>

    </~~>

    3.为Action注册拦截器 格式:

    <action>

    <interceptor-ref name=拦截器名>

    [<param name=成员变量>]       作用: 成员变量赋值

    </~~>

    </~~>

    注意事项 1 当引入自定义拦截器时会导致默认拦截器失效,此时需重新引入默认拦截器栈

    格式:<inyrtceptor-ref name=defaultStack>

     2 拦截器的注册顺序即为拦截器的执行时顺序。

     3 在拦截器中参数arg0可获得 

    Action Context ac = arg.getInvocationContext();

    Map Sesstion = ac.getSession();

    拦截器栈的使用

    步骤 

    1新建拦截器栈  格式 

    <interceptors>

    <interceptor />

    <interceptor-stack name=栈名>

    < interceptor-ref name=拦截器名/>

    < /interceptor-stack>

    < /interceptor >

    2 注册拦截器栈  格式

    <action >

    < interceptor-ref name=栈名/>

    </action>

    过滤性拦截

      a.新建拦截器类 继承AbstractInterceptor类   重写doInterceptor(方法)

      b.新建或注册拦截器时

    格式:

    <interceptor interceptor-ref>

    <param name=excludeMethods>不进行拦截的Action方法名[名]

    </param>

    <param name=includeMethods>excute,abc,aa,cc,bb</param>

    </interceptor interceptor-ref>

  • 相关阅读:
    FPGA学习之基本结构
    凸优化和机器学习
    第6篇如何访问pod
    吉日嘎拉DotNet.BusinessV4.2中的一处bug,及我的修复和扩展
    吉日嘎拉C#快速开发平台V4.0到V4.2升级记
    布隆过滤器简介及实现-----源自数学之美
    poj [1753]
    Zookeeper Hello World
    获取用户真实IP,php实现
    mysql中engine=innodb和engine=myisam的区别
  • 原文地址:https://www.cnblogs.com/ai-xin-hong-yu/p/4234236.html
Copyright © 2011-2022 走看看