spring mvc 接收对象数组
开发中遇到这种需求,需要在后台接收一个对象数组进行添加。 比如添加明细信息。 请问在后台spring mvc 如何接收对象数组,前台通过ajax请求或者 easyUI的 form表单 提交数据都可以。
------解决方案--------------------input中的name都相同,在后台,用
String[] names = request.getParameterValues("name");// 名称
String[] moneys = request.getParameterValues("money");// 密码
.....N行,N=对象中的属性的个数
然后写个for循环,按照其中一个数组来循环,
for (int i = 0; i < names.length; i++) {
先new对象,然后根据属性一次赋值,这些数组中的属性和前台的顺序是一致的
}
------解决方案--------------------将数组包装一下
比如你要接收一个Bank类型的数组,那么先建一个类
class BankArray{
private Bank banks[] ;
public void setBanks(Bank[] banks) {
this.banks = banks;
}
public Bank[] getBanks() {
return banks;
}
}
//用 BankArray 作参数
@RequestMapping(value ="xxx" , method = RequestMethod.POST)
public ModelAndView doLogOut(BankArray param){ }
/* 页面用下面的方式 */
<input name="banks[0].name" value="name1" />
<input name="banks[0].address" value="address1" />
<input name="banks[1].name" value="name2" />
<input name="banks[1].address" value="address2" />
<input name="banks[2].name" value="name3" />
<input name="banks[2].address" value="address3" />