컬렉션 조회 최적화
조회 - V1
@RestController
@RequiredArgsConstructor
@RequestMapping("/api")
public class OrderApiController {
private final OrderRepository orderRepository;
private final OrderQueryRepository orderQueryRepository;
@GetMapping("/v1/orders")
public List<Order> ordersV1() {
List<Order> all = orderRepository.findAllByString(new OrderSearch());
for (Order order : all) {
order.getMember().getName();//LAZY 강제 초기화
order.getDelivery().getAddress();//LAZY 강제 초기화
List<OrderItem> orderItems = order.getOrderItems();
orderItems.stream().forEach(o -> o.getItem().getName());//LAZY 강제 초기화
}
return all;
}
}조회 - V2
조회 - V3
조회 - V3.1
조회 - V4
조회 - V5
조회 - V6
정리
권장 순서
Last updated