1

休止状態:

session.load() というエンティティをロードし、トランザクションを開始してコミットせずにセッションを閉じるとどうなりますか (何が問題なのか)

いろいろなサイトを調べましたが、適切な説明が見つかりませんでした。

4

1 に答える 1

0

トランザクションを開始せずに永続化されたエンティティをセッションからロードするのは正しいですか (session.beginTransaction)

はい。それは問題ありませんが、DB からデータを取得するときに、ダート データをフラッシュするために hibernate が更新クエリを起動する必要がある場合があります。そのため、DB 関連のすべてのアクティビティをトランザクション内で実行することをお勧めします。

トランザクションを使用するときは、次の手順に従います。

  1. 取引を開始します。
  2. DB アクティビティ (選択/更新) を実行します。
  3. 取引を終了します。

ビューの遅延読み込みを支援するために、開いているセッション (トランザクションがコミットされた状態) を維持できますか?

あなたはそれを行うことができますが、それは良いアプローチではありません. 同時ユーザー数がこれより多い場合、深刻なパフォーマンスの問題が発生します。

于 2012-07-17T16:13:03.927 に答える