Ich habe ein Domänenobjekt, das für die Unterstützung des Ruhezustands mit Anmerkungen versehen ist.
%Vor% Die Eigenschaft emailId ist ein Fremdschlüssel, der sich auf die Spalte emailId in der Benutzertabelle bezieht. Sagen wir, ich füge eine Eigenschaft wie diese AppInput.java
private User userDetails;
Wie notiere ich das, so dass, wenn ich AppInput von db abhole, die entsprechenden Benutzerdetails auch ausgefüllt werden?
Die Eigenschaft emailId ist ein Fremdschlüssel, der sich auf die Spalte emailId in der Benutzertabelle bezieht.
Fügen Sie dann nicht die emailId
-Eigenschaft hinzu, fügen Sie eine User
hinzu.
(...) Wie notiere ich dies, sodass, wenn ich AppInput von db abhole, die entsprechenden Benutzerdetails ebenfalls ausgefüllt werden?
Nicht sicher, da es ein ManyToOne
oder OneToOne
sein könnte, aber ich nehme an, es ist ein ManyToOne
:
Das Annotationselement fetch
dient der Veranschaulichung, wobei EAGER
tatsächlich der Standardwert ist. Die Annotationselemente name
und referencedColumn
in JoinColumn
sind ebenfalls optional. Im Folgenden eine kurze Zusammenfassung der JPA-Spezifikation:
11.1.21 JoinColumn Annotation
Die Annotation
JoinColumn
wird verwendet Geben Sie eine Spalte für den Beitritt zu einer Entität an Assoziations- oder Elementsammlung.Tabelle 20 listet die Annotationselemente auf das kann für die angegeben werden
JoinColumn
Annotation und ihre Standardwerte.Wenn die
JoinColumn
Annotation selbst ist Standardmäßig ist eine einzelne Join-Spalte vorhanden angenommen und die Standardwerte in Tabelle 20 beschrieben.Das Annotationselement
name
definiert der Name der Fremdschlüsselspalte Die übrigen Beschriftungselemente (außerreferencedColumnName
) beziehen Sie sich auf diese Spalte und haben Sie das gleiche Semantik wie für dieColumn
Anmerkung.Wenn die
referencedColumnName
element ist fehlt, wird der Fremdschlüssel angenommen beziehen sich auf den Primärschlüssel des referenzierte Tabelle.
Siehe Tabelle 20 in der Spezifikation für vollständige und erschöpfende Details.