Struts2映射拦截动作
精华
小牛编辑
130浏览
2023-03-14
Struts 2的开发者用来声明行为属于一个包,扩展 “struts-default“, 其中包含默认设置的拦截。
<package name="default" namespace="/" extends="struts-default"> <action name="testingAction" class="com.yiibai.common.action.TestingAction" > <result name="success">pages/result.jsp</result> </action> </package>
拦截器的默认设置进行分组为“defaultStack”在struts-default.xml文件中,它位于 struts2-core.jar 文件,“defaultStack”提供所有的核心Struts2功能,这是最适合应用的需要。
试着学习struts-default.xml文件,它总是最好的拦截器的参考。
映射拦截动作
为了其它的拦截器映射到动作,请使用“interceptor-ref”元素。
<package name="default" namespace="/" extends="struts-default"> <action name="testingAction" class="com.yiibai.common.action.TestingAction" > <interceptor-ref name="timer"/> <interceptor-ref name="logger"/> <result name="success">pages/result.jsp</result> </action> </package>
在上面的代码片段,将其映射“timer” 和 “logger”通过“interceptor-ref”元素拦截到“TestingAction”动作类。
拦截器会按它们声明的顺序触发。
由于“TestingAction”它声明自己的拦截器,它的直接失去拦截器的所有继承默认设置,你必须明确才能使用它,见下面声明“defaultStack”的例子。
<package name="default" namespace="/" extends="struts-default"> <action name="testingAction" class="com.yiibai.common.action.TestingAction" > <interceptor-ref name="timer"/> <interceptor-ref name="logger"/> <interceptor-ref name="defaultStack"/> <result name="success">pages/result.jsp</result> </action> </package>
参考
- Struts 2 拦截器文档