0

POJO クラスのオブジェクトがあり、それをRedis (NoSql)サーバーに として保存しましたbyte[]

ここで、Redis サーバーからオブジェクトを取得し、変更を加えて を呼び出すとsession.saveOrUpdate()、例外がスローされます。

a different object with the same identifier value was already associated with the session

SerializationHelperクラスserialize()deserialize()オブジェクトを使用しており、正常に動作しています。

その逆シリアル化オブジェクトを保存できる Hibernate の方法はありますか。

4

1 に答える 1

1

saveOrUpdate()デタッチされた (または一時的な) オブジェクトをセッションにアタッチしようとします。

Hibernate は、セッションが同じアタッチされたエンティティの 2 つのインスタンスを決して保持しないことを保証するため、この例外をスローします。

デタッチされたオブジェクトの状態をアタッチされたオブジェクトにコピーする場合は、session.merge()(アタッチされ、変更されたオブジェクトを返す) を使用します。

于 2012-07-06T11:10:30.943 に答える