У меня тот же вопрос, что и у кого-то, размещенного в сообществе Hibernate: FetchProfiles .
По причинам производительности у меня есть связь в модели данных следующим образом:
...C -[FetchType.LAZY]-> D -> [FetchType.LAZY] -> E
Используя FetchProfile, я могу с готовностью загрузить D с C, но не могу понять, как с нетерпением загружать E. Я знаю, что могу успешно использовать NamedQuery с использованием внутренних объединений, но это действительно мешает мне, что я не могу разобраться как это сделать с помощью FetchProfile. Пример попытки FetchProfile (все остальное теряется в глубине веков):
@FetchProfile(name = "cwithDAndE", fetchOverrides = {
@FetchProfile.FetchOverride(entity = C.class, association = "dByCId", mode = FetchMode.JOIN),
@FetchProfile.FetchOverride(entity = D.class, association = "eByDId", mode = FetchMode.JOIN)
})
Я включаю FetchProfile для сеанса и успешно использую файл session.get без ошибок, а C и D заполнены - E по-прежнему ленив и не заполнен. В отчаянии я помню, как пробовал точечные обозначения для ассоциации от C вниз. Я могу найти только примеры, которые имеют глубину один.
Это пробел типа ОКР в моих знаниях, который нужно заполнить!
Заранее спасибо за любую помощь.