【发布时间】:2011-05-10 11:00:33
【问题描述】:
JPA 标准查询有没有办法在 class 上排序?想象一下以下领域对象:
abstract class Hobby { ... }
class Coding extends Hobby { ... }
class Gaming extends Hobby { ... }
使用常规 QL 我可以做到
from Hobby h order by h.class
但是当我对条件查询应用相同的逻辑时,会发生运行时异常“未知属性”。
CriteriaQuery<Hobby> criteriaQuery = builder.createQuery(Hobby.class);
Root<Hobby> hobbyRoot = criteriaQuery.from(Hobby.class);
criteriaQuery.orderBy(builder.asc(hobbyRoot.get("class"));
List<Hobby> hobbies = entityManager.createQuery(criteriaQuery).getResultList();
使用的 JPA 实现:Hibernate-EntityManager v3.5.5-Final
【问题讨论】:
标签: hibernate jpa jpa-2.0 criteria-api