2016-05-20 3 views
0

У меня есть класс LocType, который содержит 30 элементов и отношение @OneToMany к LocProfile, который содержит 40 элементов. Я должен сделать некоторые вычисления, чтобы определить, какой LocTypeProfile должен быть связан, как только пользователь выбирает местоположение, поэтому он должен быть доступен на стороне jsp.Replicate Hibernate Eager loading using fetch

Если я определяю отношения для инициализации Eager, как показано ниже, когда я извлекаю элементы из LocType, он дает мне 30 элементов с экземплярами, в которых хранится одно-много отношений в списке - это поведение, которое я хочу.

@OneToMany(fetch = FetchType.EAGER, mappedBy = "LocType ", cascade = CascadeType.ALL) 
private List<LocTypeProfile > locTypeProfiles; 

Теперь если я изменить отображение на отложенную загрузку в интересах хорошей практики

@OneToMany(mappedBy = "creditTypes") 

и попытаться запросить с помощью выборки

select lt from LocTypes lt left join fetch lt.locTypeProfiles 

Я получаю 40 элементов, где данные сплющены.

Мой вопрос: есть ли способ воспроизвести поведение инициализации Eager в этом сценарии?

ответ