1

我正在考虑升级我的休眠以使用 JPA criteriaQuery :-( 并且需要找到一种在 JPA 中实现别名的方法,例如:

@Entity
public class MyClass {
....
@ManyToOne(..)
public MyDetail getMyDetail() { 
return myDetail;  
}
}

Criteria criteria = session.createCriteria(MyClass.class);
....
criteria.createAlias("myDetail", "md");
criteria.add(Restrictions.eq("md.active", true));

我已经阅读了hibernate docs,但它们似乎只涵盖了一些琐碎的示例,并且掩盖了hibernate的特定功能。

干杯格雷格

4

1 回答 1

0

您可以在 entityRoot 上的 JPA CriteriaQuery 中创建别名

Root<A> entityRoot = criteriaQuery.from(A);
entityRoot.join("b", JoinType.LEFT).alias("b");
于 2018-02-14T11:08:03.183 回答