Предположим, что модель сущности, в которой Employee
имеет Supervisor
, имеет id
. Как с помощью hibernate-jpamodelgen
создать метамодель для сущностей, как я могу запросить вложенное поле?
Например, «получить всех сотрудников, у руководителя которых есть идентификатор 4», используя JpaSpecificationExecutor
:
Page<Employee> getEmployeesBySupervisorId(int id) {
return findAll((root, query, criteriaBuilder) -> {
return criteriaBuilder.equal(root.get(Employee_.supervisor.id), id);
});
}
Обратите внимание, что Employee_
является мета-классом модели для Employee
(сгенерированным Hibernate).
Этот код выдаст ошибку, так как символ id
не может быть найден в типе SingularAttribute<Employee, Supervisor>
. Я понимаю, но похоже, что они должны быть как-то цепями. Я не могу найти замечательных примеров того, как сделать это чисто.