我有一个这样的模型:
public class User{
private int id;
private City city;
//Getter - setters
}
public class City{
private int id;
private String name;
//Getter - setters
}
现在在JSP上我想显示一个用户模型的表单,它应该在下拉列表中询问用户的城市,相应的城市对象应该存储在city
中的User
对象中模型。
对于普通字段,我知道我们可以这样写:
<form:input path="name" />
但是我们如何在基础模型中绑定模型对象?在用户选择任何一个城市之后,Spring会如何知道它应该存储哪个对象?
答案 0 :(得分:0)
非常简单,你需要在控制器方法中使用@modelAttribute(或者只是将它添加到模型中)加载表单并在你的情况下使用路径应该是city.name
你的问题更像是如何引用子模型,spring跟随bean路径,在你的情况下,如果你想发布一个带有用户对象的城市,你只需要这样做
<form:form method="POST" commandName="user">
<form:input path="city.name" />
<form:input path="attribute of user" />
</form:form>