![](/img/trans.png)
[英]Hibernate JPA Cascade Delete on ManyToMany unidirectional relationship
[英]Hibernate unidirectional @ManyToMany : delete without constraint violations?
我有A班:
@Entity
public class A {
...
@ManyToMany
private Set<Ref> refs = new HashSet<Ref>();
...
}
和类Ref:
@Entity
public class Ref {
// no link to A
}
我想删除A和A_Ref但不删除Ref,但是我得到了org.hibernate.exception.ConstraintViolationException
有没有简单的方法可以做到这一点,还是我应该明确创建A_Ref类?
谢谢
编辑:我试图直接在hql中删除我的A列表。 我这样做的目的(打破关系),它的工作(级联+孤儿删除)。
我不确定,如果我做对了,但是据我了解,我的第一个猜测是,您没有使用所有必要的注释来确保休眠状态将自动自动删除Ref中的必要引用。
在manyToMany关系中,可以使用joinTables和cascadetypes来确保休眠知道自己在哪里删除所有必要的关系,而无需为其创建自己的domainObject。
有很多不错的指南来介绍如何进行管理。 乍看之下 , mkyong的指南看起来不错。 注意:他注释了getter而不是变量声明! (这只是口味问题)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.