Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Hibernate OneToOne Lazy Loading und Cascading

Ich habe ein ähnliches Problem. Es gibt ein paar verschiedene Lösungen, aber alle sind Problemumgehungen.

Die kurze Antwort lautet:Hibernate unterstützt KEINE faulen Eins-zu-eins-Beziehungen.

Die lange Antwort (Workaround) lautet:

  1. Deklarieren Sie die Beziehung auf der einen Seite (Kind) als Eins-zu-Eins-Beziehung und auf der anderen Seite (Elternteil) als Eins-zu-Vielen-Beziehung. Also ein parent.getchild() gibt einen Satz zurück, kann aber Lazy Loading verwenden.

  2. Sie können versuchen, dass Eltern und Kinder den Primärschlüssel teilen, aber dazu müssten Sie das Schema ändern.

  3. Sie können versuchen, eine Ansicht in Ihrer Datenbank zu konfigurieren, die diese Eins-zu-eins-Beziehung widerspiegelt.