有一个由 5 个实体组成的简单对象模型:
- 公司
- 组织
- 地址
- 俱乐部
- 团体
公司与单个组织相关联。(组和俱乐部也与单个组织相关联——它们是单向的,这意味着该组织不包含对其所有者的引用)。一个组织可能有 0 个或多个地址。
子查询可用于根据特定邮政编码访问公司对象,邮政编码是地址的一个属性。这是一个 JPQL 查询,可以使用特定的邮政编码访问这些公司。
@Query("select p from Company p, Organization org where (p.organization = org.id) and exists (select 1 from Address ad where zipcode = :zipcode and ad.organization = org.id)")
如何使用 JPA Criteria API 完成同样的事情?