JPA und Generics

Andreas

Mitglied
Hallo Zusammen,

ich habe eine Frage zum Umgang von JPA(-implementierungen) mit generic Collections.

Ich habe z. B. folgende Situation:

Java:
@OneToMany(mappedBy = "abrechnung")
private List<Abrechnungsdatei> dateien;
In diesem Fall muss ich TargetEntity in der Annotation nicht angeben, da ich den Generischen Typen in der Liste stehen habe. Nun kann man in Java diese ja bekanntlich nicht zur Laufzeit bestimmen.

Also wie zur Hölle erkennt JPA welche Targetentity es hier benutzen muss?

Danke im Voraus

Andreas
 

Andreas

Mitglied
Danke für die flotte antwort.

Hab dazu noch eine weiterführende Frage

Bei dem folgenden Aufruf:

Java:
((ParameterizedType) sourceField.getGenericType()).getActualTypeArguments()

auf ein Map-Field. Ist die Reihenfolge der TypeArguments im Array garantiert? Sprich ist der Key immer in [0]?
 

musiKk

Top Contributor
Davon würde ich ausgehen. Die Implementierung (sun.reflect.generics.reflectiveObjects.ParameterizedTypeImpl) z. B. verwendet dieses Array auch zum Aufbau des Strings und dieser Entspricht i.d.R. dem Quelltext. Trotzdem würde ich sicherheitshalber ein paar Corner-Cases prüfen.
 

Neue Themen


Oben