fetch join은 불러온 데이터까지 영속성 컨텍스트에 저장하지만
join은 불러온 데이터를 영속성 컨텍스트에 저장하지 않는다...!
Fetch Join
- 조회 주체가 되는 엔티티와 연관 관계의 엔티티(JOIN) 까지 모두 조회하여 영속화한다.
- 즉, 2개의 엔티티 모두 영속성 컨텍스트로 관리되어진다.
일반 Join
- 조회 주체가 되는 엔티티만 조회하고 영속화한다.
- 만약 연관 관계의 엔티티 데이터를 사용해야 할 경우 별도의 조회 쿼리문을 실행 해야 함.
- FetchType.EAGER 일 경우, 연관 관계의 엔티티를 영속화하기 위해 N번의 쿼리를 발생시킴.
- FetchType.LAZY 일 경우, 최초 조회시 획득한 id 로 조회를 N번해야함.
[참고]
https://velog.io/@heoseungyeon/Fetch-Join-vs-%EC%9D%BC%EB%B0%98-Joinfeat.DTO
https://www.inflearn.com/questions/59632