OneToMany関係を持つHibernateからの奇妙な動作

Omar BELKHODJA

私のコードには3つのエンティティが含まれています:

@Entity
public class Data implements Serializable {
    ...
    @OneToMany(cascade={CascadeType.ALL},fetch = FetchType.EAGER,
               targetEntity = Bit.class,mappedBy = "data")
    private Collection<Bit> bit;    

    @OneToMany(cascade={CascadeType.ALL},fetch = FetchType.EAGER,
               targetEntity = Linked.class,mappedBy = "data")
    private Collection<Linked> linked;
}

@Entity
public class Linked implements Serializable {
    ...
    @EmbeddedId
    private LinkIdPK id;

    @ManyToOne(optional=true,fetch = FetchType.EAGER,targetEntity = Data.class)
    private Data data;
}

@Entity
public class Bit implements Serializable {
    ...
    @EmbeddedId
    private BitIdPK id;

    @MapsId("data")@ManyToOne(optional=true,targetEntity = Data.class)
    private Data data;

データのインスタンスを1つ取得するために、Springリポジトリを使用して検索を実行しています。データベースからクエリしている要素には、データベースに「3ビット」要素と「1リンク」要素があることを知っています。

のビット要素をループすると、Data.bit3つの要素が見つかります。これは正常です。

しかし、のリンクされた要素をループするData.linkedと、同じオブジェクトを指している3つの要素が見つかります、1つの要素しか期待していませんでした。

データベースに1ビット要素を追加しようとData.linkedしましたが、同じオブジェクトを指す4つの要素が見つかりました。

それは正常な動作ですか?それは私のコードのバグですか、それともHibernateのバグですか?

Omar BELKHODJA

最後に、休止状態のチームから回答を得ました。これは既知の問題のようで、現時点では回避策しかありません。コレクションの@Fetch(value = FetchMode.SUBSELECT)1つに注釈追加しOneToManyます。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

JPAとのいくつかのOneToMany関係を維持する

分類Dev

膨大な配列を持つCodePenでの奇妙なJavaScriptの動作

分類Dev

特定の値を持つreallocの奇妙な動作

分類Dev

1対多の関係を持つ滑らかなクエリ

分類Dev

数値文字列を持つString.replaceAll()の奇妙な動作

分類Dev

Hibernate / DBunitの奇妙な動作

分類Dev

余分な列を持つHibernateの多対多の関係

分類Dev

STM32F4、IRQハンドラーと共有変数を持つ関数間の奇妙な動作

分類Dev

ArrayListからHashMap関数への奇妙な動作

分類Dev

php-出力からの奇妙な動作?

分類Dev

FTPWebRequest-Classからの奇妙な動作

分類Dev

hasOne関係のnullオブジェクトの奇妙な動作

分類Dev

日時を使用したpythonmatplotlibからのbarplotの奇妙な動作

分類Dev

null許容フィールドを持つEqualityComparerの奇妙な動作

分類Dev

bashからの依存関係を持つjarを作成します

分類Dev

親子関係を持つLinqからSQLへのクエリ

分類Dev

OneToMany関係を持つエンティティのPostmanでの再帰的なJSON応答

分類Dev

サイファー-関係のないノードを照合するときの奇妙な動作

分類Dev

Hibernate奇妙な動作を保存する

分類Dev

この奇妙な関数宣言の動作を説明できますか?

分類Dev

動的な依存関係を持つ一般的なMakeターゲットの作成

分類Dev

セッターのないプロパティを持つEntityFrameworkCoreの奇妙な動作

分類Dev

Hibernate-単方向のOneToMany関係からコレクションをフェッチするHQL

分類Dev

hibernateのOneToMany関係は4つのテーブルを作成します

分類Dev

範囲外の値を持つ列挙型を解析するときの奇妙な動作

分類Dev

フロート入力値と出力値を持つ単純なCコードの奇妙な動作

分類Dev

Hibernateを使用して@OneToMany関係を持つ親JPAエンティティを削除できません

分類Dev

Saxonを使用したAltovaXML内からのxsl:result-documentの奇妙な動作

分類Dev

別の辞書から辞書を削除します(Python 3の奇妙な動作)

Related 関連記事

  1. 1

    JPAとのいくつかのOneToMany関係を維持する

  2. 2

    膨大な配列を持つCodePenでの奇妙なJavaScriptの動作

  3. 3

    特定の値を持つreallocの奇妙な動作

  4. 4

    1対多の関係を持つ滑らかなクエリ

  5. 5

    数値文字列を持つString.replaceAll()の奇妙な動作

  6. 6

    Hibernate / DBunitの奇妙な動作

  7. 7

    余分な列を持つHibernateの多対多の関係

  8. 8

    STM32F4、IRQハンドラーと共有変数を持つ関数間の奇妙な動作

  9. 9

    ArrayListからHashMap関数への奇妙な動作

  10. 10

    php-出力からの奇妙な動作?

  11. 11

    FTPWebRequest-Classからの奇妙な動作

  12. 12

    hasOne関係のnullオブジェクトの奇妙な動作

  13. 13

    日時を使用したpythonmatplotlibからのbarplotの奇妙な動作

  14. 14

    null許容フィールドを持つEqualityComparerの奇妙な動作

  15. 15

    bashからの依存関係を持つjarを作成します

  16. 16

    親子関係を持つLinqからSQLへのクエリ

  17. 17

    OneToMany関係を持つエンティティのPostmanでの再帰的なJSON応答

  18. 18

    サイファー-関係のないノードを照合するときの奇妙な動作

  19. 19

    Hibernate奇妙な動作を保存する

  20. 20

    この奇妙な関数宣言の動作を説明できますか?

  21. 21

    動的な依存関係を持つ一般的なMakeターゲットの作成

  22. 22

    セッターのないプロパティを持つEntityFrameworkCoreの奇妙な動作

  23. 23

    Hibernate-単方向のOneToMany関係からコレクションをフェッチするHQL

  24. 24

    hibernateのOneToMany関係は4つのテーブルを作成します

  25. 25

    範囲外の値を持つ列挙型を解析するときの奇妙な動作

  26. 26

    フロート入力値と出力値を持つ単純なCコードの奇妙な動作

  27. 27

    Hibernateを使用して@OneToMany関係を持つ親JPAエンティティを削除できません

  28. 28

    Saxonを使用したAltovaXML内からのxsl:result-documentの奇妙な動作

  29. 29

    別の辞書から辞書を削除します(Python 3の奇妙な動作)

ホットタグ

アーカイブ