一个SSH。没有用到actionForm
前台提交数据到后台。数据很多。
我想用反射来调用get或set方法。还有没有别的思路。
谢谢

解决方案 »

  1.   

    用LazyActionForm呀,然后通过BeanUtils,copy到pojo中。
      

  2.   

    你要的是strut1 还是strut2呢
    strut2支持
      

  3.   

    可以直接遍历request的parameters获取参数名及值的数组,然后放入MAP中
    再用BeanUtils.pop...把map直接弹入POJO对像中,我以前是这么用的,代码很少,又简单.
      

  4.   

    写个BEAN嘛,全部装里头,想调就调
      

  5.   

    遍历request.getParameter()方法吗?
      
      

  6.   

    struts1不用ActionForm就只能使用request.getParameter()方法+BeanUtil的方法了。
    不用遍历的,request.getParameter()方法返回的是所有属性的MAP,然而因为是所有属性,需要你手动过滤掉不需要的属性。
      

  7.   

    说句实话,最好还是写个ActionForm,只写一个普通的Java Bean,大批量数据只是多写几个属性而已,get/set方法可以通过IDE自动生成,多省事呀。如果是不确定具体有多少个属性,可以使用动态ActionForm,所做的工作也只是在sturts配置文件中定义上属性。还是比你在后台编写代码从request中取省事多了
      

  8.   

    这个方法以及6楼提到的方法不可取,这样的处理实际上就是stuts从request生成ActionForm的处理,多余了。楼主如果是想把ActionForm快速的转换成POJO的话,在action中直接使用BeanUtil组件复制两个对象的字段就可以了。BeanUtil组件是集成在struts1中的,不用另外加,具体用法我也记不清楚了,但可以肯定有复制对象所有属性的方法。
      

  9.   

    恩。 谢谢大家了。
    我查一查BeanUtil组件的方法吧。 
    谢谢kuailelxl的回复。
    等我把问题解决了。会送分的。虽然有点少。。 呵呵