2
アイテムとプロパティの2つのテーブルがあり、1つのアイテムが複数のプロパティを持つことができます。私はそれを正しく(私は思う)ハイバネートでモデル化して、ItemModelオブジェクトをロードすると、すべてのプロパティが適切に読み込まれます。休止状態の一対多関係が正しく更新されない
問題は、プロパティを削除して保存しようとしているときに、プロパティが既存のプロパティに追加されるだけです。
ItemModel m = ...;
m.getPropertySet().size() // returns 5 initially
m.getPropertySet().clear();
// some update function which adds properties
m.getPropertySet().size(); // returns 1
...currentSession().saveOrUpdate(m);
現在、データベースには1ではなくそのカテゴリのプロパティが6つあります。この作業を行うにはどうすればよいですか。
プロパティに項目のマッピングのためのモデルは、この
<set name="propertySet" cascade="all">
<key column="item_id" not-null="true"/>
<one-to-many class="Property"/>
</set>