[struts]javaBean能否用ActionForm替代?在ActionForm中实例javaBean
青蛙 2005-12-05 09:43:11 第一个问题就是javaBean能否用ActionForm替代?
例如:
[javaBean文件]
public class javaBeanTest{
private String name;
public void setName(String name){
this.name = name;
}
public String getName(){
return name;
}
}
[ActionForm文件]
public class actionFormTest extends ActionForm{
private String name;
public void setName(String name){
this.name = name;
}
public String getName(){
return name;
}
public void reset(){
this.name = null;
}
public ActionErrors validate(ActionMapping mapping,HttpServletRequest request){
}
}
拿这个做测试,把javaBeanTest用actionFormTest替换编译没出错,而且页面调用也正常(数据原本存在javaBean中,页面调用该属性)。但有一个疑问:
这样的话,javaBean可以用ActionForm替换?替换了之后有得有失?得什么?失什么?
另外一个问题(以上面描述为基础):
如果两者不能相互替换,而actionFormTest中的属性与javaBean的属性都相同,想在actionFormTest中实例这个javaBean,那页面中的<html:text property="这里应当怎么写?"/>?
若用代码说明,大致如下:
public class actionFormTest{
javaBeanTest jBT = new javaBeanTest();
public void reset(){
jBT.setName(null);
}
public ActionErrors validate(ActionMapping mapping,HttpServletRequest request){}
}
配置:
<form-beans>
<form-bean name="testForm" type="test.packs.actionFormTest"/>
</form-beans>
<action-mappings>
<action path="/test" name="testForm" type="test.packs.actionFormAction">
<forward......./>
</action>
</action-mappings>
jsp的页面:test.jsp
我用
<html:form action="test">
<nested:nest property="jBT">
<html:text properyt="name"/>
</nested:nest>
</html:form>
或
<html:form action="test">
<nested:nest property="javaBeanTest">
<html:text properyt="name"/>
</nested:nest>
</html:form>
都不行,不知道这种情况下的html:text应当怎么写?
高手帮我支支招,谢谢。