hibernateのドキュメントには、「ランタイムプロキシの生成を利用したい場合は、コンストラクタを少なくともパッケージの可視性で定義する必要があります。 私は、Hibernateがプロキシ作成(Hibernate 5.x)の代わりにバイトコードを強化することができる、Hibernateのドキュメントを読みました。どのような場合でも、この新しい方法でプロキシ作成を代用できますか? どの場合、ランタイムプロキシの生成が必要ですか?いつhibernateランタイムプロキシ生成が必要ですか?
0
A
答えて
1
デフォルトはランタイム拡張で、遅延読み込みサポートに使用されます。 @OneToOne
または@ManyToOne
アソシエーションで遅延ロードを使用する場合、遅延ロードされるクラスは保護されたコンストラクタを持つ必要があります。そうしないと、Hibernateは親エンティティをフェッチしようとすると例外をスローします。例えばだから:この例では
@Entity
public class Parent {
@OneToOne(fetch=FetchType.LAZY)
private Child child;
}
Child
クラスは、保護された以上、視認性のコンストラクタを持っている必要があります。
Hibernate 5.0では、バイトコード拡張を行うことができます。これは余分なコンパイルのステップなので、MavenまたはAnt(または何でも)のビルドプロセスに配置する必要があります。バイトコードの拡張では、引数なしのコンストラクタは必要ありませんが、それをインクルードしないと、アプリケーションはJPA仕様に準拠しなくなります(Hibernate以外のプロバイダに切り替える予定がある場合のみ重要です)。
関連する問題
- 1. HibernateにPOJOが必要ですか?
- 2. HibernateにJava EEが必要です
- 3. いつIonic 3のページを生成する必要がありますか?
- 4. ランタイムプロキシPOCOはどうですか?
- 5. 必要なライブラリを生成したJARファイルにいつ展開する必要がありますか?
- 6. @DocumentIdはHibernate Searchに必要ですか?
- 7. MVC自動生成インデックスメソッド - なぜ.includeが必要ですか?
- 8. ehcacheでHibernate 4にehcache-coreライブラリが必要ですか?
- 9. Hibernateマッピングが必要ですか?このシナリオでは、
- 10. 1つのクラスのデータベーススキーマを生成する必要がありますか?
- 11. Hibernate AbstractBatchImpl sqlはnullでない必要があります
- 12. hibernateの使用にdbmanagerが必要ですか?
- 13. hibernateインターセプタは使用前に設定が必要ですか?
- 14. HibernateでのHBMファイルの生成について
- 15. dropwizard-hibernateでスキーマを生成
- 16. Hibernateエラー:org.xml.sax.SAXParseException:要素タイプ "hibernate-mapping"を宣言する必要があります
- 17. Hibernateでクローズからdbテーブルを生成
- 18. Hibernateが最適なクエリを生成しないとき。 hibernateが最適なクエリを生成する方法
- 19. いつプロキシサービスを作成する必要がありますか?いつRest APIを作成する必要がありますか?
- 20. 変数でレポートを生成する必要があります
- 21. Reactでは、いつカスタムコンポーネントを作成する必要がありますか?
- 22. いつAngularでサービスを作成する必要がありますか?
- 23. いつAWSでユーザープールを作成する必要がありますか?
- 24. どの時点でHibernateがテーブルを生成しますか?
- 25. 助け擬似乱数生成器が必要です
- 26. スクリプト生成BC30205:文の終わりが必要です。コンパイラエラー
- 27. OracleからHibernateエンティティを生成する
- 28. Disposeはいつ必要ですか?
- 29. dynamic_castはいつ必要ですか?
- 30. "typename"キーワードはいつ必要ですか?