日期:2014-05-18  浏览次数:20738 次

springmvc 保存对象存在一对多关系怎么保存
User对象属性有
    int id
    String name;
    List<Book> books;

在controller中一般我们这样就可以自动绑定对象了
     public String addUser(User user){
         XXXXService.save(user)
     }
表单中我们一般这样写就行了
    <form action="XXXXX">
         <input name="name">
         ......
    </form>
我想问的是user中那个books属性怎么让spring自动绑定,表单里面怎么写,spring是否支持这种要求的情况
求大神解决了,谢谢了
springmvc 数据绑定 一对多

------解决方案--------------------
加上注解试试:

/** 用户所拥有的角色 */
private List<UserRole> userRoles;

@Transient
@OneToMany(mappedBy = "user")
@JsonIgnore  
public List<UserRole> getUserRoles() {
       return userRoles;

------解决方案--------------------
好像也是可以直接绑定的,你可以这样写 addUser(User user,Book book){
user.setBooks(book);
}但是book对象的名称不能与user的名称一样,你可以分别去username和bookname,这样前台给的就是<input type="text" name="bookname"/>
<input type="text" name="username"/>,试试,应该可以,好久没用了快忘了
------解决方案--------------------
spring MVC的数据绑定还没有struts2那么好用,比如可以写成user.books.name,那是因为有OGNL,spring要想实现这样的话得自己扩展,好像有人扩展过,自己找找看
------解决方案--------------------
我的记得springMVC的数据绑定很好用的。 但是你这种做法貌似就不对。