0

次の例で、その人を会社から削除したい場合、それはどういう意味ですか?

class Company {
    @OneToMany(mappedBy = "company");
    List<Person> persons;
}

class Person {
    Company company;
}

つまり、の人のリストCompanyは常に遅延フェッチされます。個人を(DBから)削除すると、個人エンティティを(IDなどで)削除するだけpersonsで、所属する会社のリストで何も変更する必要がなくなりますか?

4

1 に答える 1

2

会社オブジェクトから人を削除してpersons保存する必要があります。

company.getPersons().remove(person);

orphanRemoval会社オブジェクトを保存した後、個人オブジェクトをデータベースから自動的に削除する必要がある場合は、フラグを設定します。詳細については、ドキュメントを参照してください。

/編集: Hibernate で質問にタグを付けたので、all-delete-orphanカスケード オプションが役立つ場合があります。

于 2013-10-27T21:27:07.790 に答える