我有个问题。我将 JPA 与 eclipselink 一起使用,并且我有关系:
Table A ---< Table AB >---- Table B
class A {
@OneToMany(mappedBy = "a")
private List<AB> abList
}
class AB {
@ManyToOne(fetch = FetchType.LAZY)
private A a;
@ManyToOne(fetch = FetchType.LAZY)
private B b;
}
class B {
@OneToMany(mappedBy = "b")
private List<AB> abList;
}
连接表 AB 是 A 和 B 之间的 ManyToMany 关系。现在我想从表 A 中删除一条记录,并从表 AB(连接表)和 B 表中级联删除记录。
但从 B 只有那些没有连接到表 A 中的任何其他记录的那些(many-to-many
A 和 B 之间的关系)。
我应该如何设置 CascadeType 或 orphanremoval 才能正确执行?