タグ付けされた質問 「hibernate」

HibernateはJava言語用のオブジェクトリレーショナルマッピング(ORM)ライブラリであり、開発者はアプリケーションでPOJOスタイルのドメインモデルをオブジェクト/リレーショナルマッピングをはるかに超える方法で利用できます。

14
Hibernate双方向マッピングによって引き起こされるjsonシリアライザーの循環参照を解決するにはどうすればよいですか?
POJOをJSONにシリアル化するシリアライザーを作成していますが、循環参照の問題が発生します。Hibernateの双方向の1対多の関係では、親が子を参照し、子が親を参照し、ここで私のシリアライザーが停止します。(以下のサンプルコードを参照) このサイクルを壊す方法は?オブジェクトの所有者ツリーを取得して、オブジェクト自体がそれ自体の所有者階層のどこかに存在するかどうかを確認できますか?参照が循環するかどうかを確認する他の方法はありますか?またはこの問題を解決するための他のアイデアはありますか?

8
PostgreSQLJSON列をHibernateエンティティプロパティにマッピングする
PostgreSQL DB(9.2)にJSON型の列を持つテーブルがあります。この列をJPA2エンティティフィールドタイプにマップするのに苦労しています。 Stringを使おうとしましたが、エンティティを保存すると、文字の変化をJSONに変換できないという例外が発生します。 JSON列を処理するときに使用する正しい値のタイプは何ですか? @Entity public class MyEntity { private String jsonPayload; // this maps to a json column public MyEntity() { } } 簡単な回避策は、テキスト列を定義することです。

13
session.connection()はHibernateで非推奨になりましたか?
java.sql.ConnectionHibernateセッションの関連付けを取得できる必要があります。この接続は実行中のトランザクションに関連付けられている可能性があるため、他の接続は機能しません。 session.connection()が非推奨になった場合、どうすればよいですか?
80 java  hibernate  orm 


4
JPA継承@EntityGraphには、サブクラスのオプションの関連付けが含まれます
次のドメインモデルを前提Answerとして、Valuesとそれぞれのサブ子を含むすべてのをロードし、それをに入れてAnswerDTOJSONに変換したいと思います。私は実用的な解決策を持っていますが、アドホックを使用して取り除く必要があるN + 1の問題に悩まされています@EntityGraph。すべての関連付けが構成されますLAZY。 @Query("SELECT a FROM Answer a") @EntityGraph(attributePaths = {"value"}) public List<Answer> findAll(); アドホック使用@EntityGraph上のRepository方法私は値が上にN + 1を防止するために、プリフェッチされることを保証することができるAnswer->Value関連付けを。私の結果は問題ありませんselectedが、MCValuesの関連付けの遅延読み込みのため、別のN + 1問題があります。 これを使う @EntityGraph(attributePaths = {"value.selected"}) selectedもちろん、フィールドは一部のValueエンティティの一部にすぎないためです。 Unable to locate Attribute with the the given name [selected] on this ManagedType [x.model.Value]; selected値がaの場合にのみ、関連付けをフェッチしようとするようJPAに指示するにはどうすればよいMCValueですか?のようなものが必要ですoptionalAttributePaths。

3
プロジェクションの前後に異なるモデルでフィルタリングを使用するJava
hibernateの次のJAVAモデルを考えてみます。 @Entity @Table public class Person { @Id @GeneratedValue(strategy = GenerationType.AUTO) public Long id; @Column public String firstName; @Column public String lastName; @Column public Boolean active; } APIシリアル化の次のモデル(Spring Boot Rest Controller を使用): public class PersonVO { public Long id; public String fullName; } 私が欲しいのは: 個人にフィルタリングを適用する(静的に定義) PersonVOでフィルタリングを適用する(@RequestParamから取得) ではC#.NET、私は次のように作ることができます: IQueryable<Person> personsQuery = …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.