使用拦截器的两个步骤:
- 通过<interceptor ......../> 元素来定义拦截器;
- 通过<interceptor-ref ......../> 元素来使用拦截器;
eg:
<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<!-- 通过常量配置Struts2的国际化资源信息 -->
<constant name="struts.custom.i18n.resources" value="globalMessages"/>
<!-- 通过常量配置Struts2所使用的解码集-->
<constant name="struts.i18n.encoding" value="GBK"/>
<!-- 配置本系统所使用的包 -->
<package name="lee" extends="struts-default">
<!-- 应用所需使用的拦截器都在该元素下配置 -->
<interceptors>
<!-- 配置mysimple拦截器 -->
<interceptor name="mysimple" class="lee.SimpleInterceptor">
<!-- 为拦截器指定参数值 -->
<param name="name">简单拦截器</param>
</interceptor>
</interceptors>
<action name="login" class="lee.LoginAction">
<result name="error">/error.jsp</result>
<result name="success">/welcome.jsp</result>
<!-- 拦截器一般配置在result元素之后! -->
<!-- 配置系统的默认拦截器 -->
<interceptor-ref name="defaultStack"/>
<!-- 应用自定义的mysimple拦截器 -->
<interceptor-ref name="mysimple">
<param name="name">改名后的拦截器</param>
</interceptor-ref>
</action>
<action name="">
<result>.</result>
</action>
</package>
</struts>