728x90
통합된 DTO를 만들어서 전부 다 출력한다.

@Data
public class OrderFlatDto {
//DB에서 한번에 다가지고온다.
private Long orderId;
private String name;
private LocalDateTime orderDate;
private OrderStatus orderStatus;
private Address address;
private String itemName;
private int orderPrice;
private int count;
public OrderFlatDto(Long orderId, String name, LocalDateTime orderDate, OrderStatus orderStatus, Address address, String itemName, int orderPrice, int count) {
this.orderId = orderId;
this.name = name;
this.orderDate = orderDate;
this.orderStatus = orderStatus;
this.address = address;
this.itemName = itemName;
this.orderPrice = orderPrice;
this.count = count;
}
}
한 번에 담을 DTO


- 페이징을 하지 못한다.
- 장점
- Query: 1번
- 단점
- 쿼리는 한번이지만 조인으로 인해 DB에서 애플리케이션에 전달하는 데이터에 중복 데이터가 추가되므로 상황에 따라 V5 보다 더 느릴 수 도 있다.
- 애플리케이션에서 추가 작업이 크다.
- 페이징 불가능
728x90
'실전! 스프링 부트와 JPA 활용2(API 개발과 성능 최적화)' 카테고리의 다른 글
| Ch06. SpringDataJPA,QueryDSL 맛보기 - 스프링 데이터 JPA 소개 (0) | 2021.12.23 |
|---|---|
| Ch04. API 개발 고급(컬렉션 조회 최적화) - API 개발 고급 정리 (0) | 2021.12.21 |
| Ch04. API 개발 고급(컬렉션 조회 최적화) - 주문 조회 V5(JPA에서 DTO 직접 조회 (컬렉션 조회 최적화)) (0) | 2021.12.21 |
| Ch04. API 개발 고급(컬렉션 조회 최적화) - 주문 조회 V4(JPA에서 DTO 직접 조회) (0) | 2021.12.21 |
| Ch04. API 개발 고급(컬렉션 조회 최적화) - 주문 조회 V3.1(Entity를 DTO로 변환 (페이징과 한계 돌파)) (0) | 2021.12.21 |