快速业务通道

Struts解决ActionForm、Action过多问题 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-18

Struts解决ActionForm、Action过多问题

时间:2011-02-27

1、解决Action过多问题

通过DispatchAction的方式建立一个继承自DispatchAction的Action此类Action允许我们在表单中带有参数,根据参数执行Action中的不同方法,以此实现Action的多用

步骤

① 建立一个继承自DispatchAction的Action规定方法名称

② 在表单页面中添加一个隐藏域值,假设为codi value=”insert”

③ 在Struts-config.xml的相应Form中action项目中设置parameter参数值为codi

那么当表单提交的时候,Action中的insert()方法就会被执行,可以通过改隐藏域中的值的方式来改变Action要执行的方法

2、解决ActionForm过多的问题

通过动态ActionForm的方式,即DynaActionForm

步骤

① 在Struts-config.xml

<form-beans> <form-bean name=”abcForm” type=”org.apache.struts.action.DynaActionForm”> <form-property name=”userid” type=”java.long.String”></form-property> </form-bean> </form-beans>

② 在Struts-config.xml

更改相应的action中的attribute和name为abcForm

这样就配置好了一个动态的ActionForm

3、解决动态ActionForm的验证问题

通过动态验证ActonForm的方式,即DynaValidatorForm

步骤

① 在Struts-config.xml

同2的第一步,但是type需要改成org.apache.struts.action.DynaValidatorForm

② 配置一个validation.xml文件

<form-validation> <formset> <form name="abcForm"> <field property="userid" depends="required"> <arg key="err.userid" resource="true"/> </field> </form> </formset> </form-validation>

③ 在Struts资源文件中配置err.userid、以及errors.required

④ 在Struts-config.xml配置相应的action,添加validate=”true”添加验证支持

⑤ 添加struts Plugin插件,设置plugin class为org.apache.struts.validator.ValidatorPlugIn

添加propertys

Property->pathnames

Value->/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml

这样一个验证框架就配置好了!

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号