Struts2初识(三) ---> interceptors
2009-05-18 13:02
288 查看
Interceptors 提供了对Action进行预处理和事后处理的功能. 和 Servlet 过滤器一样, 拦截器可以被分层和排序.
它还可以访问所执行的Action和所有的环境变量与执行属性。
如果要在Action中激活依赖注入功能(或其他任何由拦截器提供的功能),就必须要对Action进行配置。和其他元素一样,许多拦截器都已经提供了默认的配置项。你只需要确认一下Action所在的Package继承了“struts-default”package。
在配置一个新的拦截器之前,首先要对它进行定义。<interceptors … />和<interceptor … />标签都要直接放到<package>标签里面。像我们上面提到的那些拦截器,它们的配置项就是这样的:
<interceptors>
…
<interceptor name="autowiring"
class="…xwork2.spring.interceptor.ActionAutowiringInterceptor"/>
</interceptors>
我们同时还要确保Action中应用了所需的拦截器。这可以通过两种方式来实现。第一种是把拦截器独立的分配给每一个Action:
<action name="my" class="com.fdar.infoq.MyAction" >
<result>view.jsp</result>
<interceptor-ref name="autowiring"/>
</action>
在这种情况下,Action所应用的拦截器是没有数量限制的。但是拦截器的配置顺序必须要和执行的顺序一样。
第二种方式是在当前的Package下面配置一个默认的拦截器:
<default-interceptor-ref name="autowiring"/>
这个声明也是直接放在<package … /> 标签里面,但是只能有一个拦截器被配置为默认值。
它还可以访问所执行的Action和所有的环境变量与执行属性。
如果要在Action中激活依赖注入功能(或其他任何由拦截器提供的功能),就必须要对Action进行配置。和其他元素一样,许多拦截器都已经提供了默认的配置项。你只需要确认一下Action所在的Package继承了“struts-default”package。
在配置一个新的拦截器之前,首先要对它进行定义。<interceptors … />和<interceptor … />标签都要直接放到<package>标签里面。像我们上面提到的那些拦截器,它们的配置项就是这样的:
<interceptors>
…
<interceptor name="autowiring"
class="…xwork2.spring.interceptor.ActionAutowiringInterceptor"/>
</interceptors>
我们同时还要确保Action中应用了所需的拦截器。这可以通过两种方式来实现。第一种是把拦截器独立的分配给每一个Action:
<action name="my" class="com.fdar.infoq.MyAction" >
<result>view.jsp</result>
<interceptor-ref name="autowiring"/>
</action>
在这种情况下,Action所应用的拦截器是没有数量限制的。但是拦截器的配置顺序必须要和执行的顺序一样。
第二种方式是在当前的Package下面配置一个默认的拦截器:
<default-interceptor-ref name="autowiring"/>
这个声明也是直接放在<package … /> 标签里面,但是只能有一个拦截器被配置为默认值。
相关文章推荐
- struts2 的<s:actionMessages/>标签
- struts2标签<s:property value=""/> ognl和el .
- struts2 ognl <s:property value="[0]">
- Struts2 <s:property /> 标签用法
- struts2中<s:if>标签
- 关于Struts2 <s:iterator><s:if><s:elseif><s:else>标签备忘录
- struts2 <a></a> 自动提示 与 字符串截取
- 关于struts2标签中的<s:param />
- 上struts2的xml在<result type="redirect">参数问题
- List 序列化与反序列化到struts2的<s:hidden>变量
- struts2 <s:property/>标签的使用--输出时间格式转换
- Struts2中使用标签<s:checkboxlist>的问题
- Struts2文件下载 (来源thisliy-->感谢分享)
- <WIFI>初识ESP8266小黄板
- struts2 jsp <s:property value="path" /> path为中文的时候乱码
- Struts2的声明式异常处理 <global-exception-mappings>
- 修改struts2中UI标签的<s:a>进行权限控制
- Struts2(7):struts.xml中的<package>元素
- struts2中<a: href="xxx">xxx</a>与<s:a href="xxx">xxx</s:a>的区别
- struts2文件下载及 <param name="inputName">inputStream</param>的理解