1.提交按钮的特殊设置
<s:form action="saveUserAction" method="post">
.......
<s:submit value="保存"></>
<s:submit value="修改" name="action:editUserAction"></>
<s:form>
这样可以把表单提交给不同的Action
2.带参数的拦截器
<interceptor-ref name="myInerceptor">
<param name="includeMethods">save,update</param>
</interceptor-ref>
<interceptor-ref name="myInerceptor">
<param name="excludeMethods">delete</param>
</interceptor-ref>
这样可以只拦截某些方法,不拦截某些方法。3.配置文件中定义变量
struts.xml中
<action name="test_*" class="com.mr.action.TestAction" method="{1}">
<result name="succ">/${template}/test.jsp</result>
</action>
TestAction中:
public class TestAction extends ActionSupport {
private String template;
public String getTemplate() {
return template;
}
public void setTemplate(String template) {
this.template = template;
}
public String red(){
template = "red";
return "succ";
}
public String blue(){
template = "blue";
return "succ";
}
}
WebRoot下有两个文件夹 red blue里面都有test.jsp
struts.xml中有一个变量${template} 是Action中的一个属性(有get/set方法)便可以直接用${ }获得TestAction中的值。