0
说我有以下实体JPA的孩子集合中最后一个元素的属性排序查询
class Order {
@Id
private long id;
private long orderNo;
@OneToMany
@JoinColumn(name="order_id")
@OrderBy("timeStamp ASC")
private List<Item> items;
}
class Item {
@Id
private long id;
// e.g. COMPLETED, IN PROGRESS, QUEUED, etc...
private String status;
private long timeStamp;
@ManyToOne
private Order order;
}
使用JPA我要回由状态从最后一个项目中的项目进行排序的订单列表列表,这是最近的一个,因为items是按时间顺序排列的。如何才能做到这一点?
我强烈怀疑这不能在JPQL查询来完成。如果我是你,我会在Order实体中存储最近的项目时间戳,并按此排序(记住保持更新),或者实现自定义的“Comparator”并使用'Collections.sort'(在Java中进行排序代码,不在JQPL查询中)。 –
Nick
2013-03-22 20:56:30