您好我正在尝试使用spring-form.tld + spring MVC,但我无法弄清楚如何解决这个问题。假设我有两个类:
public class Person {
private String name;
public String getname() {...}
public void setname(String name) {...}
}
public class City {
private String name;
public String getname() {...}
public void setname(String name) {...}
}
在他们两个中都是同名的财产 - “名字”。 现在我得到了一个有两种形式的jsp:
...
<form:form name="person" modelAttribute="person">
<form:label path="name">Person</form:label>
<form:input path="name" />
<input type="submit" value="send"/>
</form:form>
<form:form name="city" modelAttribute="city" method="post">
<form:label path="name">City</form:label>
<form:input path="name" />
<input type="submit" value="send"/>
</form:form>
...
和服务于我的请求的控制器:
...
@RequestMapping(method = { RequestMethod.POST })
public ModelAndView handle(@ModelAttribute City city,
@ModelAttribute Person person) {
ModelAndView mav = new ModelAndView("test.jsp");
mav.addObject("city", city);
mav.addObject("person", person);
return mav;
}
...
问题是,如果我发布 person 表单,则将属性名称插入到person对象中,但也会插入到city中。这个例子是无稽之谈,但它说明了我的问题。我想以某种方式“绑定”人形与人物对象。
感谢您的任何建议!