0

inverse = true を使用した Hibernate の 1 対多のマッピングで混乱しています。

1.Inverse は双方向マッピングを提供します。私たちはそれを収集側に置き、反対側は所有者の船を取るつもりです。2.Inverse と Cascade はどちらも異なる目的で使用されます。

3. Casecade = all Hibernate では、1 回の呼び出しで親とその関連付けが保存されます。

4. Cascade =none では、親とその子を保存するために異なる呼び出しを行う必要があります。

5. cascade = all および inverse =true では、1 対多の場合に制約を更新するための更新クエリが 1 つ少なくなります。

しかし、 cascade= none のいずれか inverse= true または inverse=false(In one to many) の場合、SQL クエリの変更を見つけることができません。

だから私の質問は cascade = none の場合 inverse=true が正確に何をするかです。

4

1 に答える 1

0

cascadeそしてinverse直交概念。

inverse単に、関連付けが双方向であり、関連付けの反対側によってマッピングされていることを示しています。それは反対側を協会の所有者にします。

アソシエーションの片側のみが所有者側であり、Hibernate は永続化するときに所有者側のみを考慮します。これは、エンティティに、およびaを含む B のセットがあり、これらの B インスタンスが親として参照されていない場合、所有者側 (B) が次のように言うため、Hibernate は関連付けを保持しないことを意味します。親A。b1b2b3a

于 2012-12-20T12:29:15.140 に答える