merge() の推奨される使用方法は、変更を入力する前にまず DTO を取得することです。
public void merge(PersonModel model) {
Person inputDTO = PersonBuilder.build(model)
Person dto = get(pk)
dto.setName(inputDTO.getName())
dto.getChildren().clear()
Iterator<Child> iter = inputDTO .getChildren().Iterator();
while(iter.hasNext()){
dto.getChildren().add(iter.next());
}
dto.merge();
}
データが誤って削除されないように、ドメイン モデルを dto に変換してマージするような操作を実行する、よりエレガントな方法はありますか。
問題の例: Hibernate: merge() の使用時に孤立した削除を防止します。
リストをクリアして追加する必要があるのは非常に無駄だと思います。
誰かが私にデザインパターンやそれを適切にコーディングする方法を勧めてくれますか?
ありがとうございました
拡張機能:
1) Hibernate Hashset を使用して List を置き換えることは可能ですか? 休止状態のハッシュセットは、主キーに基づいて要素を置き換えますか?
助けはありますか?