Develop/SPRING FRAMEWORK
2021. 7. 29.
API 개발 - 컬렉션 조회 성능 최적화
이번 포스팅에서는 @OneToMany 관계가 설정된 Entity를 조회할 때 발생하는 이슈를 해결해보겠다. 이는 @OneToOne, @ManyToOne 관계와 달리 컬렉션을 포함하고 있기 때문에 성능 최적화를 위해 고민해야 할 요소가 더 많다. 예를 들어 1개의 Order 엔티티를 조회할 때 3개의 OrderItem을 가지고 있다면 DB 조회 시 Row가 뻥튀기(3개)될 수 있다. 1. 엔티티 직접 노출 @GetMapping("/api/v1/orders") public List ordersV1() { List all = orderRepository.findAllByString(new OrderSearch()); for (Order order : all) { order.getMember().getName(..