質問があります。私はEclipselinkでJPAを使用しており、関係があります:
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 を適切に設定するにはどうすればよいですか?