struts-config.xml配置:
<form-beans>
<!-- 配置动态ActionForm -->
<form-bean name="logonForm" type="org.apache.struts.action.DynaActionForm">
<!--
name值要和jsp页面上组件的name属性对应
initial是缺省值,当表单页面没有userName或passWord属性时才会显示这个值,如果表单存在name属性为这个的组件,只是没填值,是不会显示initial的值,是""!
type表示字段的类型
-->
<form-property name="userName" type="java.lang.String" initial="hahah"></form-property>
<form-property name="passWord" type="java.lang.String" initial="123"></form-property>
</form-bean>
</form-beans>
<action-mappings>
<action path="/logon" type="com.xxc.action.LogonAction" name="logonForm" scope="request">
<forward name="success" path="/success.jsp"></forward>
</action>
</action-mappings>
LogonAction里的取值:
package com.xxc.action;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.DynaActionForm;
public class LogonAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
DynaActionForm dynaActionForm = (DynaActionForm)form;
String userName = dynaActionForm.getString("userName");
String passWord = dynaActionForm.getString("passWord");
System.out.println("userName--->"+userName);
System.out.println("passWord--->"+passWord);
return null;
}
}