2017-07-05 1 views
0

Ich versuche, eine bidirektionale Beziehung von eins zu viele mit den Federdaten jpa zu erstellen, aber die mit @onetomany annotierte Liste gibt immer ein Element zurück. HierSpring jpa onetomany gibt nur ein Element zurück

ist der Code für meine Entitäten (Getter und Setter weggelassen):

@Entity 
@Table(name = "sdk_sdk") 
public class SDKEntity { 

@Id 
@GeneratedValue(strategy = GenerationType.IDENTITY) 
private Integer id; 

private String version; 

@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER, mappedBy = "sdk") 
@OrderBy("order ASC") 
private List<SDKFileEntity> fileEntities; 
} 

Und die zweite Einheit:

@Entity 
@Table(name = "sdk_file") 
public class SDKFileEntity { 
@Id 
@GeneratedValue(strategy = GenerationType.IDENTITY) 
private Integer id; 
private String fileType; 
private Integer sdkId; 

public SDKFileEntity() { 
} 

@ManyToOne 
@JoinColumn(name = "id", insertable = false, updatable = false) 
private SDKEntity sdk; 

Ich versuche, eine manytoone Mapping zu haben, wo die sdkId entspricht die ID aus der SDKEntity-Klasse. Jedes Mal, wenn ich versuche, die sdkfiles vom sdkEntity mit Feder des Repositorys zu bekommen, die Größe der Liste ist immer 1.

So zum Beispiel:

SDKEntity entity=repository.findOne(foo); 
List<SDKFileEntity> files=entity.getFileEntities(); 

hier die Größe der Dateien 1, ich habe Löschen Sie das erste Element aus der Datenbank, um das zweite Element zu erhalten.

+0

Mai werden in Datenbankspalte Namen geschrieben, dass nur ein 'SDKFileEntity' ist assoziiert mit gefunden 'SDKEntity entity' –

+0

Zeigen Sie, wie Sie Elemente für sdkenttity hinzufügen – xyz

+0

die Elemente waren bereits in den Tabellen, bevor ich die Entitäten erstellt –

Antwort

0

Dieser Teil der Code sieht verdächtig

@ManyToOne 
@JoinColumn(name = "id", insertable = false, updatable = false) 
private SDKEntity sdk; 

name = "id" sollte es tatsächlich Spaltenname sein, wie wie diese

@JoinColumn(name = "VISIT_ID", referencedColumnName = "ID") 
    @ManyToOne 
    private Visit visitId; 
+0

Es ist eigentlich nur ID in meiner Datenbank genannt. –

+0

THen whar SDKFileEntity Tabelle ID? – Ashish451

+0

dasselbe, auch nur ID genannt –

Verwandte Themen