拦截器中参数的设置:
<struts>
<package name="struts2" extends="struts-default" namespace="/com">
<interceptors>
<!--定义拦截器-->
<interceptor name="MyInterceptor1"
class="com.demo.MyInterceptorClass1"> </interceptor>
<interceptor name="MyInterceptor2"
class="com.demo.MyInterceptorClass2"> </interceptor>
<interceptor name="MyInterceptor3"
class="com.demo.MyInterceptorClass3"> </interceptor>
<interceptor name="MyInterceptor4"
class="com.demo.MyInterceptorClass4"> </interceptor>
<!--定义拦截器栈-->
<interceptor-stack name="myStack">
<interceptor-ref name="MyInterceptor1">
<!--在定义拦截器栈是初始化拦截器参数-->
<param name="name">我的第一个拦截器</param>
</interceptor-ref>
<interceptor-ref name="MyInterceptor2">
</interceptor-ref>
<interceptor-ref name="MyInterceptor3">
</interceptor-ref>
<interceptor-ref name="MyInterceptor4">
</interceptor-ref>
</interceptor-stack>
</interceptors>
<action name="MyAction" class="com.MyClass">
<result name="success">/success.jsp</result>
<!--引用系统拦截器-->
<interceptor-ref name="defaultStack"></interceptor-ref>
<!--引用自定义拦截器-->
<interceptor-ref name="myStack"></interceptor-ref>
</action>
</package>
</struts>
在配置文件中以经定义了拦截器myStack,这个拦截器中有4个拦截器,在定义拦截器是已经定义了MyInterceptor1的参数,但是现在如果在Action中使用这个拦截器时,需要修改拦截器MyInterceptor1的参数那么怎么办呢??
呵呵,哥有办法,看下面例子:
<struts>
<package name="struts2" extends="struts-default" namespace="/com">
<interceptors>
<!--定义拦截器-->
<interceptor name="MyInterceptor1"
class="com.demo.MyInterceptorClass1"> </interceptor>
<interceptor name="MyInterceptor2"
class="com.demo.MyInterceptorClass2"> </interceptor>
<interceptor name="MyInterceptor3"
class="com.demo.MyInterceptorClass3"> </interceptor>
<interceptor name="MyInterceptor4"
class="com.demo.MyInterceptorClass4"> </interceptor>
<!--定义拦截器栈-->
<interceptor-stack name="myStack">
<interceptor-ref name="MyInterceptor1">
<!--在定义拦截器栈是初始化拦截器参数-->
<param name="name">我的第一个拦截器</param>
</interceptor-ref>
<interceptor-ref name="MyInterceptor2">
</interceptor-ref>
<interceptor-ref name="MyInterceptor3">
</interceptor-ref>
<interceptor-ref name="MyInterceptor4">
</interceptor-ref>
</interceptor-stack>
</interceptors>
<action name="MyAction" class="com.MyClass">
<result name="success">/success.jsp</result>
<!--引用系统拦截器-->
<interceptor-ref name="defaultStack"></interceptor-ref>
<!--引用自定义拦截器-->
<interceptor-ref name="myStack">
<!--为拦截器栈中拦截器参数赋值-->
<param name="MyInterceptor1.name">赋值测试</param>
</interceptor-ref>
</action>
</package>
</struts>
看出区别了吧,区别就这么一点点,OK这个问题搞定,
现在时刻凌成2:57,哥该睡觉了,明天还得和大一的兄弟们秋游呢,晚安!哈哈!!