我有一个简单的层次结构,TradeCustomer是一个OrganisationRoleOrganisationRole链接到OrganisationOrganisation具有包含组织所有角色的属性roles

我想使用CriteriaBuilder编写一个JPA查询,其根是Organisation,但是访问TradeCustomer的属性,例如,我需要将OrganisationOrganisationRole联接并将其转换为TradeCustomer

最佳答案

这是我的解决方案:

CriteriaQuery<String> query = cb.createQuery(String.class);
Root<Organisation> root = query.from(Organisation.class);
Join<Organisation, TradeCustomer> tcJoin = root.join("roles");
query.select(tcJoin.get(TradeCustomer_.rate));


重要的一点是使用列的名称(roles)代替Organisation_.roles。

09-10 07:25