我有以下问题.我有三个类,A,B和C. A包含一个关于B:s的OneToMany关系列表.B包含与C的ManyToOne关系.C包含名为"name"的字段,B还包含名为"name"的字段.我想要完成的是让A列表中的项目主要按C的名称排序,其次按B的名称排序 - 问题是我不知道如何做到这一点.它甚至可能吗?
我正在使用EclipseLink作为我的JPA提供程序.
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;
}
Run Code Online (Sandbox Code Playgroud)
编辑是的,我尝试了不同的变体,例如@OrderBy("c.name")不起作用,我只是收到一条错误消息,告诉我实体类b不包含名为"c.name"的字段.
Chs*_*y76 11
这是不可能的.@OrderBy只接受直接属性/字段名称,而不接受嵌套属性.这是有道理的,真的,因为"c"表 - 取决于你的提取策略甚至可能不是一个选择的一部分来检索你的"b".
| 归档时间: |
|
| 查看次数: |
6965 次 |
| 最近记录: |