Struts 中表单Form类型转换问题

  五一快到,办公室天天有人讨论去哪去哪玩的,明天公司又集体组织在岛内玩一天,现在都没什么心思工作了,还好任务不多,老总出差不在,可以放肆一下,呵呵..
      翻了翻以前学习web开发时留下的学习文档,感觉有些拿出来复习复习还是很有用的。下面是一篇有关structs在presentation层数据类型转换的一些问题的解决方案(注:该问题在2.0版本以后的的structs已经有所改进 ),希望对大家有些帮助。
Struts 中表单Form类型转换问题
        页面表单中的每个需要提交的值都要对应到指定的actionform的某个变量上,而actionform可以定义一些变量供action进行设置。在提交给action进行处理前,form可以先进行校验,这个只要在struts-action.xml中定义一下对应的action,并指定这个form的封装对象—》formbean就ok了。
      传给action的form都是一个抽象的ActionForm类型,我们如果要取得其中的值就需要进行类型转换,通常有两种方法:
    1、通过BeanUtils或PropertyUtils的copypropertys方法全盘拷贝。
    2、强制类型转换
但这两中方法都有局限性,对于一些formbean中定义的特殊类型,如list、int、date类型,是不能直接使用该方法进行转换的,我们有时不得不把formbean中与表单对应的变量都设置成string,这样可以避免很多麻烦,但是,在后台的数据存取和处理却要麻烦不少。因为,我们不得不重新构建一个可以被拷贝或强制类型转换的类,并通过该类为中介进行数据的传输,要不,就是重新从该form中把需要的值一个一个取出来,然后在需要类型转换的地方进行类型的转换处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值