CascadeType.ALL
関連付けを伴うJPA の動作について、いくつかの疑問があり@ManyToMany
ます。次のシナリオがあります。
横にs とs の@ManyToMany
間に関連があります。Employee
Department
CascadeType.ALL
Employee
同じ部署に所属する 2 人の従業員を作成する場合
Department sales = new Department("sales");
Employee alice = new Employee("alice", sales);
Employee bob = new Employee("bob", sales);
そして、私はそれらを永続化します。カスケードにより、部門は期待どおりに永続化されます。
alice
次に、とを 1 つずつ削除しbob
ます。私が削除alice
するEmployee
と削除されますが、営業部門は変更されません。
しかし、削除するとbob
(後alice
)、営業部門は自動的に削除されます。
何故ですか?を削除したときに部門を削除しようとしなかったのはなぜalice
ですか? 私はそれを期待していたでしょう!
ありがとう!