Как в Hibernate выполнить левое соединение для нескольких дочерних элементов?

Я работаю с спящим режимом, и у меня возникают проблемы с созданием hql-запроса, который извлекает все дочерние элементы моего объекта.

Например: Пользователь объекта имеет список автомобилей и список друзей.

Чтобы получить пользователя с его автомобилями, я бы использовал следующий запрос:

from User u left join fetch u.cars where u.id = ?

Это прекрасно работает, поэтому я подумал, что будет легко получить пользователя с его автомобилями и его друзьями с помощью следующего запроса:

from User u left join fetch u.cars left join fetch u.friends where u.id = ?

Но это выдает следующую ошибку:

HibernateException: невозможно одновременно получить несколько пакетов

Теперь мой вопрос: как правильно получить несколько дочерних элементов в спящем режиме?

18
задан Dherik 19 December 2018 в 22:40
поделиться