프록시와 즉시로딩 주의
- 가급적 지연 로딩만 사용(특히 실무에서)
- 즉시 로딩을 적용하면 예상하지 못한 SQL이 발생한다.
- 즉시 로딩은 JPQL에서 N+1 문제를 일으킨다.
- @ManyToOne, @OneToOne은 기본이 즉시 로딩 -> Lazy로 설정
- @OneToMany, @ManyToMany는 기본이 지연 로딩
지연 로딩 활용 - 실무
- 모든 연관관계에 지연 로딩을 사용해라!
- 실무에서 즉시 로딩을 사용하지 마라!
- JPQL fetch 조인이나, 엔티티 그래프 기능을 사용해라!
- 즉시 로딩은 상상하지 못한 쿼리가 나간다.
Reference
- 자바 ORM 표준 JPA 프로그래밍
'Spring > JPA/Hibernate' 카테고리의 다른 글
기본값 타입 (0) | 2021.05.17 |
---|---|
영속성 전이(CASCADE)와 고아 객체 (0) | 2021.05.16 |
프록시 (0) | 2021.05.13 |
상속관계 매핑 (0) | 2021.05.12 |
일대다 [1:N] (0) | 2021.05.11 |
댓글