728x90
연관관계 매핑시 고려사항 3가지
다중성
- 다대일 : @ManyToOne
- 일대다 : @OneToMany
- 일대일 : @OneToOne
- 다대다 : @ManyToMany
단방향, 양방향
- 테이블
- 외래키 하나로 양쪽 조인 가능
- 사실 방향이라는 개념이 없음
- 객체
- 참조용 필드가 있는 쪽으로만 참조 가능
- 한쪽만 참조하면 단방향
- 양쪽이 서로 참조하면 양방향(사실 양방향이라는 건 없음, 단방향이 두개인 것)
- 연관관계의 주인
- 테이블은 외래키 하나로 두 테이블이 연관관계를 맺는다.
- 객체 양방향 관계는 참조가 양쪽에서 일어난다.
- 때문에 둘 중에 테이블의 외래키를 관리할 곳을 지정해야한다.
- 연관관계의 주인은 외래키를 관리하는 참조 쪽으로 한다.
- 주인의 반대편은 외래키에 영향을 주지 않고 단순 조회만 가능하다.
참고
김영한 - 자바 ORM 표준 JPA 프로그래밍
728x90
'[JAVA] > JPA' 카테고리의 다른 글
JPA - 엔티티와 테이블 매핑시 주의 사항 (2) | 2022.11.29 |
---|---|
JPA - 다양한 연관관계 매핑 (0) | 2022.11.28 |
JPA - 연관관계 매핑 (0) | 2022.11.27 |
JPA - 기본 키 매핑 (0) | 2022.11.27 |
JPA - 필드와 컬럼 매핑 (0) | 2022.11.27 |