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>

  • 相关阅读:
    Jmeter压测
    .NET .Core 选择日志框架
    边缘控制器在边缘计算中的作用
    为何选择NB-IOT,NB-IOT的特点是什么
    RS232协议是什么
    物联网在生活中的应用场景
    透传模块是什么 为何透传
    4G DTU相对于GPRS/3G DTU有什么优势
    MQTT协议和Modbus之间的区别是什么
    4G模块应该怎么选择
  • 原文地址:https://www.cnblogs.com/ai-xin-hong-yu/p/4234236.html
Copyright © 2011-2022 走看看