params拦截器

负责将请求参数设置为Action属性

staticParams拦截器

将配置文件中action元素的子元素param参数设置为Action属性

servletConfig拦截器

将源于Servlet API的各种对象注入到Action,必须实现对应接口

fileUpload拦截器

对文件上传提供支持,将文件和元数据设置到对应的Action属性(用了Commons-FileUpload组件)

exception拦截器

捕获异常,并且将异常映射到用户自定义的错误页面

validation拦截器

调用验证框架进行数据验证

 

在struts-default.xml中定义一个defaultStack拦截器栈,并将其指定为默认拦截器。

只要在定义包的过程中继承struts-default包,那么defaultStack将是默认的拦截器。

当为包中的某个action显示指定了某个拦截器,则默认拦截器不会起作用。

拦截器栈中的各个拦截器的顺序很重要

<struts>
    <package name="default" namespace="/" extends="struts-default">
        <interceptors>
            <interceptor name="myTimer" class="interceptor.TimerInterceptor"></interceptor>
        </interceptors>
        <global-results>
            <result name="success">/success.jsp</result>
        </global-results>
        <action name="timer" class="action.TimerAction">
            <!-- 为Action显式引用拦截器后,默认的拦截器default不再生效 需要手工引用-->
            <interceptor-ref name="defaultStack"></interceptor-ref>
            <!-- 引用拦截器 -->
            <interceptor-ref name="myTimer"></interceptor-ref>
        </action>
    </package>
    
</struts>    

 

Posted on 2018-03-30 23:26  ZHONGLINGHUI  阅读(179)  评论(0编辑  收藏  举报