1

1対多の関係を持つアプリケーションがあります。フェッチを行うと、dao からデータを返す前にコレクションを読み取る必要があり、セッションが終了するか、データを読み取ろうとするとデータが失われ、アクティブなセッションがないというエラーが発生します。私のユーザー層。これはなぜですか、それを回避する方法はありますか? これは、Hibernate の非常に高価な側面のようです。これを説明する記事がいくつかあると思います。

4

1 に答える 1

0

オブジェクトを返す前にすべてのコレクション アイテムを読み取る代わりに、次の 2 つのオプションがあります。 1. Lazy の代わりに Eager fetch モードを使用します。例 @OneToMany(mappedBy = "client", fetch = FetchType.EAGER) 2. オブジェクトのフェッチと同じトランザクション内で、オブジェクトのこれらのコレクション項目を読み取る呼び出しを保証します。

よろしく、 ティン

于 2012-09-21T03:56:55.333 に答える