一 为什么有Dynamic Form
使用动态表单可以更加灵活的使用表单,在某些不确定表单个数和类型的情况下,可以使用动态表单来解决问题。
二 动态表单和普通表单区别
1 普通表单
首先要定义一个表单类,然后进行配置。
2 动态表单
完全依赖反射机制创建,所以不需要去定义表单类,直接配置即可。
三 快速入门
1、如果配置动态表单
<form-beans >
<form-bean name="userForm1" type="org.apache.struts.action.DynaActionForm" >
<!-- 该表单的属性是配置出来的 -->
<form-property name="username" type="java.lang.String" />
<form-property name="password" type="java.lang.String" />
<form-property name="email" type="java.lang.String" />
</form-bean>
</form-beans>
2、如何取出数据
public ActionForward register(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
DynaActionForm userForm1 = (DynaActionForm) form;// TODO Auto-generated method stub
//从动态表单中取数据
String name=userForm1.get("username").toString();
String password=userForm1.get("password").toString();
String email=userForm1.get("email").toString();
System.out.println(name+" "+password+" "+email);
return mapping.findForward("registerok");
}