JPA / Hibernate Spalte auswählen Subset auf Join
Frage
In SQL ist es einfach zu tun zurückzukehren einen Join und nur die Spalten, die Sie aus der verknüpften Tabelle wollen. Was ist der beste Weg, dies in JPA zur Karte / Ruhezustand?
Zum Beispiel gibt es einen Ordner-Instanz an die EMAIL_FOLDER kartiert und eine E-Mail-Instanz an die E-MAIL-Tabelle zugeordnet. Es gibt eine Eins-zu-viele-Beziehung von Ordnern zu E-Mail. Die E-Mail-Einheit ist ziemlich schwer, weil es CLOBs des Textes enthält, Anhänge, etc. Es gibt einige Fälle, in denen wir die gesamte E-Mail zurück und es gibt auch andere Fälle erhalten müssen, wenn wir wollen einfach nur zurückbringen sender, Betreff und sentDate und nicht den Speicher-Overhead von in den CLOB-Daten bringen will. diese in SQL zu erreichen, ist einfach, aber ich bin nicht sicher, was der beste Ansatz in JPA / Hibernate wäre.
Ich denke über eine LightEmail erstellen, die nur auf sender abbildet, Betreff und sentDate. Ist dies der beste Weg, um so etwas zu handhaben?
Update: An dieser Stelle möchte Ich mag Bytecode Instrumentierung, wenn möglich vermeiden
.Lösung
Beschriften die Eigenschaft (die CLOB) als @Basic(fetch=FetchType.LAZY)
Siehe Deklarieren Grundeigenschaftszuordnungen im Hibernate Referenz