如题:一对多的关系,只要修改了一这边的信息,多那边的外键也会被清空cascade的inverse的属性都试过了
<set name="******" cascade="all" lazy="false">
     <key>
<column name="work_plane_id" not-null="true">
     <comment>外键</comment>
</column>
     </key>
     <one-to-many class="*********" />
</set>

解决方案 »

  1.   

    所以你在修改的时候必须要先set一遍你原来里面的内容,这样就可以解决你那种被清空的问题了
      

  2.   

    如果是修改不是删除的话,你只需要先得到这个对象实例,然后把修改的属性set进去,再用update方法修改一下。个人猜想,你直接新建了一个对象实例,然后将主键以及要修改的属性set入这个对象实例,然后直接调用update方法,所以会把没修改的属性直接清空。如果还有问题,发上来修改的方法,最好把update的方法用到的东西说一下,在修改时的代码也说一下。update是直接用hibernatetemplate,jdbcTemplate,是用sql还是hql,还是什么其他方式。