728x90
이 예제를 이해하기 위한 개념
https://un-lazy-midnight.tistory.com/99
https://un-lazy-midnight.tistory.com/100
https://un-lazy-midnight.tistory.com/101
예제 - 5
https://un-lazy-midnight.tistory.com/98
지난 글의 예제에 이어서 글로벌 페치 전략과 영속성 전이를 설정해보자.
각 엔티티의 연관관계에 따른 지연로딩 설정을 해준다.
결과 코드는 아래와 같다.
public class Order {
@Id @GeneratedValue
@Column(name="order_id")
private Long id;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "MEMBER_ID")
private Member member;
@OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@JoinColumn(name = "DELIVERY_ID")
private Delivery delivery;
@OneToMany(mappedBy = "order", cascade = CascadeType.ALL)
private List<OrderItem> orderItems = new ArrayList<>();
public class OrderItem {
@Id
@GeneratedValue
@Column(name="order_item_id")
private Long id;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "ORDER_ID")
private Order order;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "ITEM_ID")
private Item item;
public class Delivery {
@Id @GeneratedValue
private Long id;
private String city;
private String street;
private String zipcode;
private DeliveryStatus status;
@OneToOne(mappedBy = "delivery",fetch = FetchType.LAZY)
private Order order;
}
728x90
'💻dev > 🌱Java+Spring' 카테고리의 다른 글
JPA | 객체지향 쿼리 언어 간단 소개 (JPQL, Criteria, QueryDSL 등) (0) | 2023.05.02 |
---|---|
JPA | 예제로 알아보는 값 매핑 (예제 - 6) (0) | 2023.05.02 |
JPA | 값 타입 컬렉션이란? (저장, 조회, 수정 예제 및 주의사항) (0) | 2023.05.02 |
JPA | 값 타입은 변경이 가능할까? 불변 객체(immutable object)란? (+ 값 타입을 비교하는 방법) (0) | 2023.05.02 |
JPA | 기본값 타입과 임베디드 타입이란? (0) | 2023.05.01 |