我有非常复杂的html表单,其中包含多个包含多个值的行。我想在spring controler中接收带有列表的对象数据。
示例链接:
?param1=value1¶m2=value2¶m3=value3¶m1=value4¶m2=value5¶m3=value6 etc...
控制器方法:
@RequestMapping(value="/config_add", method=RequestMethod.POST)
public ModelAndView configAddSubmit(Form form)
表单类
class Form
{
List<String> param1;
List<String> param2;
List<String> param3;
setters and getters here
}
我能找到工作的唯一方法是以html格式添加名称索引,因此链接如下所示:
?param1[0]=value1¶m2[0]=value2¶m3[0]=value3¶m1[1]=value4¶m2[1]=value5¶m3[1]=value6 etc...
问题是用户可以使用js动态更改表单,添加新行,删除行或更改其位置,以便索引可能混淆。在控制器内维护行顺序非常重要。 Html表单以正确的顺序发送它,但是Spring控制器无法在没有索引的情况下解析它。