Strategie zur Vererbung im Ruhezustand und warum

Ich habe 3 nicht-abstrakte, ausdauernde Klassen. Die Klassen MyClubUser und HisClubUser erben von der Klasse User. Ich verwende eine Tabelle pro Unterklassenstrategie, d. H.@Inheritance(strategy = InheritanceType.JOINED), für diese Klassen.

Was ich beobachtet habe, war die generierte SQL verwendet Left Outer Join HisClubUser und MyClubUser, wenn ich eine Abfrage auf User-Klasse. Warum macht der Ruhezustand das [Verbinden anderer Tabellen], wenn ich nur Benutzer bin? Obwohl die Daten abgerufen werden, kann ich nicht auf diese Eigenschaften in MyClubUser oder HisClubUser zugreifen, da Benutzerinstanzen zurückgegeben werden. Verursacht dies im Vergleich zu einer Abfrage, bei der nur die Benutzertabelle ohne die linke äußere Verknüpfung abgefragt wird, zusätzlichen Aufwand?

Vielen Dank

Antworten auf die Frage(3)

Ihre Antwort auf die Frage