Создайте простую объектную модель, состоящую из 5 сущностей:
- Компания
- Организация
- Адрес
- Клуб
- Группа
Компания связана с одной организацией. (Группа и Клуб также связаны с одной Организацией — они однонаправлены, то есть Организация не содержит ссылки на своего владельца). Организация может иметь 0 или более адресов.
Подзапрос можно использовать для доступа к объектам компании на основе определенного почтового индекса, который является атрибутом адреса. Вот запрос JPQL, который может получить доступ к этим компаниям с определенным почтовым индексом.
@Query («выберите p из Company p, Organization org, где (p.organization = org.id) и существует (выберите 1 из Address ad, где zipcode = :zipcode и ad.organization = org.id)»)
Как можно сделать то же самое с помощью JPA Criteria API?