티스토리 뷰
다중성
JPA 에서는 다중성을 위한 어노테이션을 제공한다.
이 JPA 어노테이션들은 DB와 매핑하기 위해 존재 한다.
그래서 데이터베이스 관점에서의 다중성을 기준으로 고민 하면 된다.
다대일 - @ManyToOne
일대다 - @OneToMany
일대일 - @OneToOne
다대다 - @ManyToMany
다중성을 고민하다가 풀리지 않으면 대칭성을 고려하자. 다중성의 관계들은 대칭성을 다 가지고 있다. 예를 들면, 회원과 팀 - 팀과 회원 둘다를 고려하면 쉬워 진다.
단방향, 양방향
이전 학습 내용 정리
단방향 연관관계 - https://ict-nroo.tistory.com/121
양방향 연관관계 - https://ict-nroo.tistory.com/122
테이블은
외래 키 하나로 양쪽을 조인할 수 있다.
사실 방향이라는 개념이 없다.
객체는
참조용 필드가 있는 쪽으로만 참조할 수 있다.
한쪽만 참조하면 단방향이고
양쪽이 서로 참조하면 양방향이다.
앞서 말했듯이 사실은 단방향이 두개가 마주보고 있는 것이다
연관관계의 주인
위의 단방향, 양방향의 개념을 알아야. 연관관계의 주인을 이해할 수 있다.
테이블은 외래 키 하나로 두 테이블이 연관관계를 맺는데,
객체의 양방향 관계는 A->B, B->A 처럼 참조가 2군데에서 일어난다.
그렇기 때문에 객체에서 둘중 테이블의 외래키를 관리할 곳을 정해야 한다.
연관관계의 주인은 외래 키를 관리하는 참조이다.
주인의 반대편에서는 외래키에 영향을 주지 않고, 단순 읽기만 할 수 있다.
Reference
'ICT Eng > JPA' 카테고리의 다른 글
[JPA] @OneToMany, 일대다[1:N] 관계 (1) | 2019.08.23 |
---|---|
[JPA] @ManyToOne, 다대일[N:1] 관계 (1) | 2019.08.23 |
[JPA] 양방향 연관관계 (0) | 2019.08.16 |
[JPA] 단방향 연관관계 (0) | 2019.08.16 |
[JPA] Spring Data JPA와 QueryDSL 이해, 실무 경험 공유 (18) | 2019.04.30 |
- Total
- Today
- Yesterday
- AWS
- Java
- ORM
- 스프링부트
- Algorithm
- JPA
- 한밭대학교
- 순환
- 인프런
- 무선통신소프트웨어연구실
- vuejs
- 한밭이글스
- RBT
- Recursion
- 알고리즘
- vuex
- Vue.js
- Spring Boot
- 자바
- 라즈베리파이
- IT융합인력양성사업단
- github
- 시간복잡도
- Wisoft
- 정렬
- 레드블랙트리
- 젠킨스
- Raspberry Pi
- Spring
- springboot
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |