2017-05-05 2 views
0

Ich habe Entitäten:JPA SortiertNach in @OneToMany durch externes Feld

@Entity 
public class C { 

@Column 
private String name; 

} 


@Entity 
public class B { 

@Column 
private Integer id; 

@ManyToOne 
@JoinColumn(name = "id_c") 
private C c; 

} 


@Entity 
public class A { 

@OneToMany(mappedBy = "a") 
@OrderBy("id") 
private Set<B> itemsB; 

} 

Jetzt, als ich auf A.itemsB Zugriff() - bestellten Artikel von B.id

Ich brauche A.itemsB zu bekommen() geordnet nach C.name. Ist das möglich?

Ich habe versucht, etwas wie @OrderBy ("c.name") zu schreiben, aber es funktioniert nicht.

+0

verwenden Sie eine QUERY, und setzen Sie das als ORDER BY –

+0

https://docs.jboss.org/hibernate/jpa/2.1/api/javax/persistence/OrderBy.html – Sudhakar

Antwort

0

überprüfen Sie einfach, welche Reihenfolge importiert wird: org.hibernate.annotations.OrderBy oder javax.persistence.OrderBy .. Sie sollten die zweite verwenden.

+0

Verwendet javax.persistence.OrderBy, aber @OrderBy ("c.name") funktioniert auch nicht. –

Verwandte Themen