1. 연관 관계 매핑 종류
① 일대일(1:1) - @OneToOne
② 다대일(N:1) - @ManyToOne
③ 일대다(1:N) - @OneToMany
④ 다대다(N:M) - @ManyToMany
2. 연관 관계 매핑 방향
1. 일대일 단방향 매핑
2. CartRepository
3. 장바구니 조회 테스트 (즉시로딩)
1. 다대일 단방향 매핑
1. 연관 관계 주인
엔티티를 양방향으로 연관 관계를 설정하면 객체의 참조는 둘인데 외래키는 하나
연관 관계 주인 규칙
- 연관 관계의 주인은 외래키가 있는 곳으로 설정
- 연관 관계의 주인이 외래키를 관리(등록, 수정, 삭제)
- 주인이 아닌 쪽은 연관 관계 매핑 시 mappedBy 속성 값 지정
- 주인이 아닌 쪽은 읽기만 가능
2. 양방향 매핑
3. 쇼핑몰 프로젝트 ERD
1. 다대다 매핑
public class Item {
@ManyToMany
@JoinTable(
name = "member_item",
joinColums = @JoinColumn(name = "member_id"),
inverseJoinColumns = @JoinColumn(name = "item_id")
)
private List<Member> member:
}