Wie kann eine Many-to-On-Beziehung zwischen zwei Klassen mit unterschiedlichen EmbeddedId-Objekten mithilfe nur einer pa

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Wie kann eine Many-to-On-Beziehung zwischen zwei Klassen mit unterschiedlichen EmbeddedId-Objekten mithilfe nur einer pa

by Guest » 08 Jan 2025, 09:17

Ich habe zwei Entitäten in JPA, Klasse1 und Klasse2, mit den folgenden Strukturen:

Code: Select all

// class1
@Embeddable
public class Class1Id {
@Column(name = "col_one")
String column1;

@Column(name = "col_two")
String column2;
}

@Entity
public class Class1 {
@EmbeddedId
Class1Id class1Id;

@OneToMany(mappedBy = "class1")
List class2List;
}

Code: Select all

// class2
@Embeddable
public class Class2Id {
@Column(name = "col_one")
String column1;

@Column(name = "col_three")
Integer column3;
}

@Entity
public class Class2 {
@EmbeddedId
Class2Id class2Id;

@ManytoOne
@JoinColumn(name = "col_one", referencedColumnName = "col_one")
Class1 class1;
}
Ich möchte eine Viele-zu-Eins-Beziehung zwischen Klasse1 und Klasse2 erstellen, aber nur mit Spalte1 (d. h. col_one), was sowohl in Klasse1 als auch in Klasse2 üblich ist.
Gibt es eine Möglichkeit, diese beiden Klassen in JPA nur mit Spalte1 zu verknüpfen, auch wenn sie unterschiedliche EmbeddedId-Strukturen haben? Wie kann ich diese Beziehung richtig abbilden?

Top