这个类是一个懒form为什么说是懒懒form呢?它不用像ActionForm在工程中建一个实例例form,从而不好管理,产生没有必要的代码?
一般在Action中得到的数据都 是据有完整性的。在实际开发当中,用户从jsp中输入数据。是否合法一般是通过ajax
验证的。而当数据进入Action是时。数据是完整的。所以ActionForm是多余的。
有人说可以DynaActionForm。这个类是不用在工程中建包和建类。但要在struts-config.xml中写上要用到的属性。
要用到多少属性,就要写多少个。一个工程下来就很乱了。
而LazyvalidatorForm 就不用建属性。但是要注意的是工写Action是里面的validate属性要改为false:不做观念更验证。
要通过ajax验证。
下面就用代码来说一说。lazyvalidatorForm的用法:
首先中struts-config.xml中配制一个(from-bean):
<form-bean name="testForm" type="org.apache.struts.validator.LazyValidatorForm"></form-bean>
在在action-mappings 中在配一个action
<action path="/testAction"
name="testForm"
type="com.action.TestAction"
validate="false"
/>
一定记住validate一定 是false;
就上面这样struts-config就配完成了
然后接下来。我们来看一看在Action中怎样取值了:
LazyValidatorForm 第一部肯定是要把它强转了。然后再通过get();方法取了吗?
LazyValidatorForm lvf=(LazyValidatorForm)form;
String userName=(String)lvf.get("userName");
String email=(String)lvf.get("email");
String address=(String)lvf.get("address");
下面有我一个学习实例。就上面这样struts-config就配完成了