在使用连接表时要求Hibernate不执行级联?

时间:2015-11-11 17:01:52

标签: java hibernate hibernate-cascade javax.persistence

当我从表r中删除记录时,它会从链接表b中删除一条记录,因为r与b具有多对多关系,而我正在使用Hibernate Join Table来关联它们。这是我的问题所在:我有一个依赖于链接表b的视图,并且删除r的结果导致从视图中删除但现在该视图记录不再存在。由于这个原因,我得到了陈旧状态异常。

我可以要求Hibernate忽略级联删除吗?我试图在尝试删除之前驱逐b表记录,但这似乎不起作用。

1 个答案:

答案 0 :(得分:0)

有点生疏,但我相信你可以控制你的连接声明注释中的级联行为,如下所示:

@ManyToMany(cascade = {CascadeType.PERSIST, CascadeType.MERGE})
private List<OtherData> dontDeleteMe;

哪个会级联持久并合并操作,但不会更新或删除。

查看此页面了解更多详情:

http://vladmihalcea.com/a-beginners-guide-to-jpa-and-hibernate-cascade-types/