JPA 프로그래밍
[자바 ORM 표준 JPA 프로그래밍] 실전 예제3 - 다양한 연관관계 매핑( 4/4 )
oss0202
2021. 7. 18. 21:20
- 배송, 카테고리 추가
1. 엔티티
- 주문과 배송은 1:1( @OneToMany )
- 상품과 카테고리는 N:M( @ManyToMany )
2. ERD
- 다대다( N:M )연관관계를 추천하지는 않지만 예제를 보여주기 위해서 'CATEGORT_ITEM' 테이블을 생성했습니다.
3. 엔티티
- N:M 관계는 1:N, N:1로
- 테이블의 N:M 관계는 중간 테이블을 이용해서 1:N, N:1으로 변경해야한다.
- 실무에서는 중간 테이블이 단순하지 않다.
- @ManyToMany는 제약
- 필드 추가 X
- 엔티티 테이블 불일치
- 실무에서는 @MaynToMany 사용 X
- 테이블이 올바르게 생성되지 않을 경우
DROP TABLE IF EXISTS ORDERS CASCADE;
DROP TABLE IF EXISTS ITEM CASCADE;
DROP TABLE IF EXISTS MEMBER CASCADE;
DROP TABLE IF EXISTS CATEGORY CASCADE;
DROP TABLE IF EXISTS CATEGOTY_ITEM CASCADE;
DROP TABLE IF EXISTS DELIVERY CASCADE;
DROP TABLE IF EXISTS MEMBERPRODUCT CASCADE;
DROP TABLE IF EXISTS ORDERITEM CASCADE;
DROP TABLE IF EXISTS PRODUCT CASCADE;
- 연관관계 주요속성 정리
1. @ManyToOne
- 다대일 관계 매핑
- mappedBy가 없으므로 항상 연관관계의 주인이 되어야 한다.
2. @OneToMany
- 다대일 관계 매핑
출처
https://www.inflearn.com/course/ORM-JPA-Basic/dashboard
자바 ORM 표준 JPA 프로그래밍 - 기본편 - 인프런 | 강의
JPA를 처음 접하거나, 실무에서 JPA를 사용하지만 기본 이론이 부족하신 분들이 JPA의 기본 이론을 탄탄하게 학습해서 초보자도 실무에서 자신있게 JPA를 사용할 수 있습니다., 본 강의는 자바 백엔
www.inflearn.com