动态actionForm是Struts1框架从1.1版本开始引入的一项新技术,可以通过配置struts-config.xml文件,而不用编程的方式创建ActionForm。在系统运行的时候,会根据struts-config.xml中配置的DynaActionForm自动创建actionForm实例。
struts1中普通actionForm和动态actionForm的区别:对属性的访问方式不同,普通的actionForm是通过属性的geter()/seter()方法访问,动态actionForm通过get()方法获取数据。
动态actionForm的配置方式:1,在struts-config.xml中的<form-beans>节点下面配置<form-bean name="loginForm" type="org.apache.struts.DynaActionForm">
<form-property name="userName" type="java.lang.String"><form-property name="password" type="java.lang.String">2,编写LoginAction类,主要代码如下:
public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)throws Exception {
// TODO Auto-generated method stub
DynaActionForm loginForm = (DynaActionForm) form; //创建DynaActionForm实例
String userName = (String)loginForm.get("userName"); //通过loginForm的get()方法获取请求的数据
String password = (String)loginForm.get("password");
if("user".equals(userName)&& "123".equals(password)){
return new ActionForward("/pages/success.jsp");
}
else
return new ActionForward("/pages/fail.jsp");
}
写的很烂,实在不想写这篇文章了,自己明白就好了吧。。。