Tôi gặp sự cố sau. Tôi có ba lớp, A, B và C. A chứa một danh sách liên quan đến OneToMany của B: s. B chứa một quan hệ ManyToOne với C. C chứa một trường có tên là "name" và B cũng chứa một trường có tên là "name". Những gì tôi muốn thực hiện là để có các mục trong danh sách của A sắp xếp chủ yếu bằng tên của C và thứ hai bằng tên B - vấn đề là tôi không biết làm thế nào để làm điều này. Thậm chí có thể không?Xác định thứ tự của danh sách
Tôi đang sử dụng EclipseLink làm nhà cung cấp JPA của mình.
class A {
@OneToMany
@OrderBy("b.c.name, b.name") <---- this is the problem
List<B> b;
}
class B {
@ManyToOne
C c;
String name;
}
class C {
String name;
}
EDIT Vâng, tôi đã cố gắng biến thể khác nhau, ví dụ @OrderBy ("c.name") không làm việc, tôi chỉ nhận được một thông báo lỗi nói với tôi rằng các lớp thực thể b không chứa một trường được gọi là "c.name".