728x90


- 단방향 연관관계를 먼저 잘 정하는 것이 제일 중요하다.
- 상품 입장에서는 주문이 그렇게 중요하지 않다(따라서 OrderItem과 Item은 단방향)
Member Entity

- 양방향 연관관계가 설정되었다.
- 사실 비지니스 적으로 member에서 상품을 양방향으로 설정할 일이 없다.
- 이렇게 설계하면 잘못 설계된 케이스이지만 예제니까 현재 양방향으로 설정한다.
Order Entity

- member 같은 경우 연관관계의 주인임으로 mappedby 옵션을 걸지 않는다.
- @JoinColumn을 통해 외래키로 설정될 이름을 적어준다( 없으면 mapping 테이블을 생성한다)
- orderItems 같은경우 연관관계의 주인이 아니므로 mappedby 옵션을 추가한다.
OrderItem Entity

- order 같은경우 연관관계의 주인임으로 mappedby 옵션을 걸지 않는다.
- item 같은경우 연관관계의 주인임으로 mappedby 옵션을 걸지 않는다.
Test

- 연관관계 편의 메서드를 만들어 양방향 연관관계를 실행하고(addOrderItem), 사실 단방향으로 모든 걸 할 수 있으므로 설계 시에는 단방향으로 모든 것을 설계한 뒤, 개발하면서 양방향 관계를 설정하여라
728x90
'자바 ORM 표준 JPA 프로그래밍(인프런)' 카테고리의 다른 글
| Ch06. 다양한 연관관계 매핑 - 일대다 [1:N] (0) | 2021.12.13 |
|---|---|
| Ch06. 다양한 연관관계 매핑 - 다대일 [N:1] (0) | 2021.12.13 |
| Ch05. 연관관계 매핑 기초 - 양방향 연관관계와 연관관계의 주인(주의점) (0) | 2021.12.12 |
| Ch05. 연관관계 매핑 기초 - 양방향 연관관계와 연관관계의 주인(기본) (0) | 2021.12.12 |
| Ch05. 연관관계 매핑 기초 - 단방향 연관관계 (0) | 2021.12.12 |