多対多マッピングでの Hibernate の異なる識別子エラー
エラー「同じ識別子の値を持つ別のオブジェクトが既に関連付けられていました。」 「セッション」は、Hibernate がセッション内にすでに存在するオブジェクトを保存しようとすると発生します。この場合、UserBean、GroupBean、RoleBean クラスに関係する多対多のマッピングに関連しているようです。
提供されたコードでは、saveOrUpdate メソッドが保存機能。 saveOrUpdate はオブジェクトの保存と更新の両方を試行しますが、この場合、重複した rolebean#1 オブジェクトが発生します。
エラーは 2 つの解決策を示唆しています。
例外メッセージは、rolebean#1 オブジェクトがセッション内で 2 回保存されたことを示します。これは、同じオブジェクトが複数のコレクションに割り当てられている場合に発生する可能性があります。
Hibernate の動作を理解し、オブジェクトが割り当てられているコードを調べることで、問題を解決し、次のことを確実に行うことができます。オブジェクトは保存され、セッション内で正しく関連付けられます。
以上がmyHibernate の多対多マッピングで「同じ識別子の値を持つ別のオブジェクトがすでにセッションに関連付けられています」というエラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。