比如对于user ,user_role, role这种多对多的关系,
user为主控方,我发现更新user的时候,即使role没有变化,hibernate也把user_role表user相关联的数据清了一遍,然后又重新插入了数据,如何才能做到,如果用户角色没有变化,user_role表也不变化呢?

解决方案 »

  1.   

    忘了具体是哪个属性来控制了,建议楼主把many-to-many中的属性尝试一下……
      

  2.   

    哪个属性呢,没找到哦,many to many有哪些属性呢
      

  3.   

    这样改了以后,删除user对象某个role的时候,关联表无法删除
      

  4.   

    应该不会出现这样的情况把。多对多的时候 user 对象里面包含一个 role对象的set集合。只要hibernate 发现这个set没有被改变过就不会去做持久化操作啊 。你看看是不是你做了什么操作改变了这个set.