즉시로딩
1. 즉시로딩
엔티티를 조회할 때 연관된 엔티티도 함께 조회하는 Fetch EAGER 타입
2. 즉시로딩 테스트
- OrderItem 객체 조회
3. 즉시로딩 select 쿼리문
- OrderItem 엔티티와 연관된 엔티티를 조회하고 연관된 엔티티의 연관된 엔티티 또한 조회
지연로딩
1. 지연로딩
연관된 엔티티는 사용할 때 조회하는 Fetch LAZY 타입
- 실제 비즈니스 구현 시 매핑되는 엔티티의 개수 ↑
- 사용하지 않는 데이터도 한꺼번에 조회하므로 성능 ↓
2. 지연로딩 설정
- @ManyToOne 어노테이션에 fetch 설정 지정
3. 지연로딩 테스트
- OrderItem 객체 조회
- orderItem.getOrder().getClass() 수행 결과
- 실제 객체가 아닌 프록시 객체를 넣어둠
- 프록시 객체는 실제 사용 시점에 조회 쿼리문이 실행됨
- orderItem.getOrder().getOrderDate() 수행 결과
- 실제 사용 시점에 select 쿼리문이 수행됨
4. 연관 관계 매핑 지연로딩 설정
- 연관 관계가 맺어진 엔티티의 fetch 전략을 모두 LAZY 로 설정
'JAVA > SpringBoot Shoppingmall' 카테고리의 다른 글
[VSCODE] SpringBoot 쇼핑몰(MVN) 상품 등록하기 - Entity, DTO, View (0) | 2022.06.27 |
---|---|
[VSCODE] JPA Auditing (0) | 2022.06.27 |
[VSCODE] JPA CASCADE, ORPHAN (영속성 전이) (0) | 2022.06.27 |
[VSCODE] SpringBoot 쇼핑몰(MVN) Entity 연관 관계 매핑 (0) | 2022.06.27 |
[VSCODE] SpringBoot 쇼핑몰(MVN) 페이지 권한 설정 (0) | 2022.06.27 |