1
固定されていないオブジェクトだけを保存するには、休止状態にする必要があります。このオブジェクトが既に永続化されている場合、hibernateは何もしないか、永続化されたオブジェクトのidを返す必要があります。ソースのequals()とhashCode()メソッドはowerridenであり、正常に動作しています。 設定やプレ・インサート・リスナーのような方法で何とかできますか?たとえば :Hibernate。固定されていないオブジェクトのみを保存する
両方の要素が異なるIDので保持されます私の場合はsession.beginTransaction();
ElementToPersist element = new ElementToPersist();
element.setName("Element");
element.setValue("Value");
session.save(element);
session.getTransaction().commit();
session.beginTransaction();
ElementToPersist element2 = new ElementToPersist();
element2.setName("Element");
element2.setValue("Value");
session.save(element2);
session.getTransaction().commit();
。挿入する前に、この要素の存在をチェックするために、どのようにして休止状態にすることができますか?あなたは最高のプラチスを見せてくれますか? ありがとうございます。
異常なアーキテクチャのために残念ながら私は能力を持っていません。別のオブジェクトがこの要素と多対1の関連付けを持ち、それを永続化する必要がある場合、私は何ができますか? –
さて、データベースに既に存在する要素、または場合によっては永続化した要素でManyToOneの関連付けを初期化します。 –
だから、私は "Session.createQuery(" o =? ")というElementTOPersistのようなクエリを実行し、このオブジェクトを手動で保存しなければならないということを意味しましたか? –