如何发送对象列表以查看并返回到控制器中的Post方法
假设我有上课Person
,我列出了一个Person
实例列表,并将这个列表添加到一个实例中Model
。
List<Person> persons = new ArrayList<Person>();model.addAttribute("persons",persons);
return "savePersons";
在View
页面中,我有一个表格:
<form:form method="post" action="savePerson" modelAttribute="persons"> <c:forEach var="person" items="${persons}">
<form:input path="person.FName" name="FName" id="FName" value="" />
<form:input path="person.LName" name="LName" id="LName" value="" />
</c:forEach>
<button type="submit"></button>
</form:form>
单击提交按钮时,我想将其绑定Person List
到控制器上的POST方法。
@RequestMapping(value = { "savePerson" }, method = RequestMethod.POST)public String savePerson(Model model, HttpServletRequest request,
HttpSession session,@ModelAttribute("persons")List<Person> persons) {
System.out.println(persons.length);
return "success";
}
但persons
列表未按该POST
方法绑定/获取。
是否可以通过这种方式绑定列表对象,或者有其他替代方法吗?
回答:
我认为此链接将帮助您设置要执行的操作:
http://viralpatel.net/blogs/spring-mvc-multi-row-submit-java-
list/
看起来您的表单中需要将其修改为:
<form:form method="post" action="savePerson" modelAttribute="persons"> <c:forEach var="person" items="${persons}" varStatus="status">
<form:input path="person[${status.index}].FName" name="FName" id="FName" value="" />
<form:input path="person[${status.index}].LName" name="LName" id="LName" value="" />
</c:forEach>
以上是 如何发送对象列表以查看并返回到控制器中的Post方法 的全部内容, 来源链接: utcz.com/qa/412056.html