hibernate级联剔除报错:deleted object would be re-saved by cascade (remove deleted obje
hibernate级联删除报错:deleted object would be re-saved by cascade (remove deleted obje
如果做项目比较多的程序员,在使用hibernate的时候,级联删除经常会出现这种deleted object would be re-saved by cascade (remove deleted object from associations)异常,综合自己结合别人在此总结一下,解决办法有三种:
方法1 删除Set方的cascade:
方法2 解决关联关系后,再删除
/** * TempVO->TempItemVO 为一对多关系 */ TempVO.getTempItemVOs.remove(TempItemVO );//在所关联的一方的set中移走当前要删除的对象 TempItemVO.setTempVO(null); //设置所对应的一方为空,解除它们之间的关系 session.delete(TempItemVO);
方法3 在many-to-one方增加cascade 但值不能是none
另外要理解cascade、inverse;在做级联删除的时候,别cascade=“save-update”这么设置呢,这可真的大头了。呵呵。