안녕하세요 강사님 해결을 못해서 질문드립니다 ..
class A{
....
@OneToMany
List<B> bList;
}
class B{
...
@OneToMany
List<C> cList;
}
class C{
...
}
B,C는 데이터가 있을수도 있고 없을 수도 있는 형태입니다.
(일부 생략하였습니다)
select * from A a left join B b on a.a_id = b.a_id
left join C c on b.b_id =c.b_id
where a.email = 'email';
결과를 List<A> 로 받으려고 합니다.
제 생각에는 아래 쿼리 한번이면 관련 데이터들을 하나의 쿼리로 할 수 있을 것 같은데
fetch 조인이 OneToMany의 경우 fetch 조인은 한번 밖에 걸수 없는 것으로 알고 있습니다.
이런 경우에는 native query로 사용해야하는 건가요..
아니면 for loop를 돌면서 LAZY 로딩으로 각각 A가 가지고 있는 B의 개수만큼 쿼리를 날리는게 좋은걸까요..?
(default_batch_fetch_size : 1000 설정)
질문드립니다