オブジェクト「Child」のコレクションを含む「Parent」という名前の単純なpojoがあります。
hibernate / jpaでは、これは単純に1対多の関連付けであり、子は親を知りません。これらの子オブジェクトは異なるタイプの親を持つことができるため、親を知らない方が簡単です(タグと親を表す子を考えてみてください。タグを持つさまざまなオブジェクトタイプ)。
ここで、親オブジェクトをWebサイトのクライアントビューに送信して、ユーザーが変更できるようにします。
そのために、Hibernate / GWT/Gileadを使用します。
ユーザーがいくつかの変更を加え、保存ボタン(ajax)をクリックすると、親オブジェクトがサーバーに送信されます。親のフィールドが変更されましたが、さらに重要なのは、コレクションで一部の子オブジェクトが追加または削除されたことです。
要約すると、Parentオブジェクトがサーバーに戻ると、コレクションに次のようになります。-idがnullであり、永続化する必要がある新しい「Child」オブジェクト-idがnullではなく、マージする必要がある変更された「Child」オブジェクト- idがnullではないが、元々は親によって所有されていない、ハッキングされた可能性のある「子」オブジェクト-子オブジェクトが欠落している(削除されている):削除する必要があります
親オブジェクト(およびそのコレクション)をどのように保存しますか?データベースから親コレクションをロードして、変更されたコレクションの各オブジェクトを比較し、ハッキングされたアイテムがないかどうかを確認しますか?古いコレクションをクリアして(孤立を削除するため)、新しい子を再度追加しますか(ただし、変更されていない子がいくつかあります)?
ありがとう
PS:私の英語で申し訳ありませんが、あなたが概念を理解していることを願っています;)