Возьмем, к примеру, у меня есть эти объекты
Company.java
Код: Выделить всё
private List departments;
private SalaryCode salaryCode;
Код: Выделить всё
private List employees;
private Company company;
private SalaryCode salaryCode;
Код: Выделить всё
private Department department;
private SalaryCode salaryCode
Код: Выделить всё
Session session = sessionFactory.openSession();
CriteriaBuilder builder = session.getCriteriaBuilder();
CriteriaQuery criteriaQuery = builder.createQuery(clazz);
Root root = criteriaQuery.from(clazz);
//nestedRelationships is a varargs passed as parameters
for(String nestedRelationship : nestedRelationships) {
root.fetch(nestedRelationship, JoinType.LEFT);
}
List result = session.createQuery(criteriaQuery.select(root)).list();
Конечно, я сначала получаю «департамент», а затем «department.salaryCode».
Это поддерживается? Если да, то как это работает, и если оно не поддерживается, что я могу сделать?
Подробнее здесь: https://stackoverflow.com/questions/473 ... sted-joins