私は冬眠を学び始めました、そして私は単純なグーグルでクリアすることができないいくつかの質問を明らかにしたいと思います。質問は、deleteOrphan、カスケードタイプ、およびさまざまなアソシエーションマッピングタイプの相互作用に関するものです。始めましょう。よろしくお願いします。
@Entity
@Table(name = "t_member", schema = "church")
public class Member implements Serializable {
@ManyToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@JoinTable(name = "t_event_members", joinColumns = {
@JoinColumn(name = "member_id")
}, inverseJoinColumns = {
@JoinColumn(name = "event_id")
})
private Set<Event> events;
}
@Entity
@Table(name = "t_event", schema = "church")
public class Event implements Serializable {
@ManyToMany(fetch = FetchType.LAZY, mappedBy = "events",
cascade = CascadeType.ALL)
private Set<Member> members;
}
- メンバーは所有側です。アクティブなセッション中に、メンバーを取得します。メンバーコレクションからイベントを削除してsaveOrUpdateを実行すると、対応するメンバーがイベントから削除されますか?
- この場合、「所有側」はカスケードにどのように影響しますか?
- orphanDeleteとCascadeTypeを混在させるとどうなりますか?