Ленивая загрузка / нетерпеливое извлечение в Hibernate - PullRequest
0 голосов
/ 08 марта 2012

Я установил свойство lazy = "false" в моем файле hbm для столбца Контакт в таблице "Сотрудник"

Приведенный ниже запрос выполняется для получения сотрудника с идентификатором 5:

Select e from Employee e where e.id = 5

При выполнении выполняется несколько запросов, и я полагаю, что это связано с не ленивой загрузкой.

Как убедиться, что выполняется только один запрос? Можем ли мы изменить запрос, сохранив свойство lazy как false? Если нет, каким должно быть изменение в запросе для извлечения записи?

Я использую Spring + Hibernate

1 Ответ

2 голосов
/ 08 марта 2012

Исходя из вашего запроса, я предполагаю, что вы используете HQL для этого. Я также собираюсь предположить, что Contact является ссылкой.

select e from Employee e left join fetch e.Contact where e.Id = 5
...