DispatchAction
使用DispatchAction时,要求表单提交时额外传递一个参数,该参数用于区分到底调用Action中的哪个方法。
1、 在请求时加入额外参数(如表达提交时)
< html:form action = "/user.do?method=login" >
2、 在struts-config.xml的action配置中加入parameter参数
< action
attribute = "userForm"
input = "/login.jsp"
name = "userForm"
parameter = "method"
path = "/user"
scope = "request"
type = "com.gem.struts.action.UserAction" >
< forward name = "succ" path = "/succ.jsp" />
< forward name = "login" path = "/login.jsp" />
</ action >
3、 在相应的type的 UserAction extends dispatchAction中加入相应的方法
public ActionForward login(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
UserForm userForm = (UserForm) form;
if (userForm.getUname().equals( "jack" ))
return mapping.findForward( "succ" );
else {
return mapping.getInputForward();
}}
本文详细介绍了如何在Struts框架中利用DispatchAction实现表单提交时额外传递参数,以区分调用Action中的不同方法。通过在HTML表单中指定URL参数和在配置文件中设置参数传递规则,实现灵活的业务逻辑分发。

被折叠的 条评论
为什么被折叠?



