지연로딩2 JPA 지연 로딩과 조회 성능 최적화 (2) 지연 로딩 @OneToMany 연관관계에 대한 성능 최적화 내용이다. 엔티티 직접 노출 엔티티를 API의 응답 값으로 반환하는 방법이다. @GetMapping("/api/v1/orders") public List orderV1() { List orders = orderRepository.findAll(); for (Order order : orders) { order.getMember().getName(); order.getDelivery().getAddress(); List orderItems = order.getOrderItems(); orderItems.forEach(o -> o.getItem().getName()); } return orders; } @OneToMany 연관 관계인 엔티티의 값을 .. 2022. 3. 7. JPA 지연 로딩과 조회 성능 최적화 (1) 지연 로딩 @ManyToOne, @OneToOne 연관관계에 대한 성능 최적화 내용이다. @OneToMany 연관관계는 다음 포스트에서 정리할 예정이다. 예제 도메인 @Entity @Table(name = "orders") @NoArgsConstructor(access = AccessLevel.PROTECTED) public class Order { @Id @GeneratedValue @Column(name = "order_id") private Long id; @ManyToOne(fetch = LAZY) @JoinColumn(name = "member_id") private Member member; @OneToMany(mappedBy = "order", cascade = CascadeType.ALL).. 2022. 3. 6. 이전 1 다음