lazy = "false"およびbatch-size = "100"を指定したエンティティがあります。それは正常に動作していますが、私はバッチサイズを削除し、lazy = "true"を設定したい場合もあります。私がhbmファイルを変更すると、他のアプリケーションに影響します。現在のセッションのエンティティのプロパティをhqlを実行する前に変更できる方法はありますか?実行時にハイバネートマッピングプロパティを変更する方法
4
A
答えて
8
実行時にHQLまたは基準クエリによってフェッチ戦略(遅延の有無)を変更することができます。
List cats = sess.createCriteria(Cat.class)
.add(Restrictions.like("name", "Fritz%"))
.setFetchMode("mate", FetchMode.EAGER)
.setFetchMode("kittens", FetchMode.EAGER)
.list();
:
from Cat as cat
inner join fetch cat.mate
left join fetch cat.kittens
は基準クエリ、例えば代わりに基準APIの使用方法Criteria.setFetchMode(..)Hibernate Doku - 15.3. Associations and joins
を参照してください: HQLであなたは、たとえば、入社コレクションの値を初期化するためにに参加フェッチを使用することができます
これのためのHibernate Doku:16.5. Dynamic association fetching
0
はいできます。
詳細はhereです。
2
フェッチ戦略を変更するには、Fetching Profilesを使用します。
関連する問題
- 1. 実行時にアンドロイドで実行時にEditTextのテキストを変更する方法
- 2. 実行時にタブバーのタブを変更する方法
- 3. 実行時にページフォーマットを変更する方法(jasperreport)
- 4. 実行時にローカライズされたイメージを変更する方法
- 5. 実行時にSpringの@Scheduled fixedDelayを変更する方法
- 6. WPF + PRISM実行時にリージョンを変更する方法
- 7. 実行時にプリズムモジュールを変更する方法
- 8. 実行時にpersistence.xmlを変更する方法
- 9. 実行時にJFrameのJPanelを変更する方法
- 10. 実行時にダイアログのタイトルを変更する方法は?
- 11. 実行時にページの場所を変更する方法
- 12. 実行時にWPFウィンドウのコンテンツを変更する方法
- 13. Install4j:実行時にランチャーをコピーして変更する方法
- 14. WPF:実行時にCurrentUICultureを変更する方法
- 15. 実行時にテーマを変更する
- 16. デルファイfiremonkeyを変更する方法スピードボタン実行時のルックアップスタイル
- 17. アプリを一度に実行する方法と変更のない別の時間を実行する方法
- 18. 実行時のアニメーションを変更する
- 19. 実行時のレイアウトテンプレートを変更する
- 20. iPhone:コンボボックスの実装方法と実行時の値の変更方法
- 21. 実行時にLINQ O/R-Mのテーブル名/ソースを変更する方法は?
- 22. NHibernateがアプリケーションの実行時にスキーマの変更を処理する方法
- 23. 実行時にロードされたDLLのインポートアドレステーブルを変更する方法
- 24. 実行時にイメージソースを変更する標準的な方法は?
- 25. MonoTouch:実行時にコントロールの位置を変更する方法は?
- 26. Jquery:バインドロード+変更を同時に実行
- 27. 実行時にListViewの行項目書体を変更する
- 28. 実行時にJList行の色を変更する
- 29. Delphi XE2/Intraweb12 - 実行時にポートを変更する/グローバル変数
- 30. 実行時に変数を作成する方法
私が知っているように、バッチサイズを動的に変更する方法はありません。 SessionFactoryの作成に使用されたConfigurationオブジェクトを変更することで、設定時に変更することができます。 org.hibernate.cfg.Configuration.getClasses()およびorg.hibernate.mapping.Collection.setBatchSize()を参照してください。 – snorbi
フェッチに関する追加情報は、http://docs.jboss.org/hibernate/core/3.6/reference/en-US/html_single/#performance-fetchを参照してください。 – snorbi