일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 캐쉬가능
- Transaction not successfully started
- 멱등활용
- initialDelay
- @Table
- ERROR TYPE : org.apache.ibatis.binding.BindingException
- 매핑정보가없는필드
- gitrevert
- 네이버 연결된 서비스
- fixedDelay
- SpringBoot
- JPA
- gitreset
- DB방언
- 무상태프로토콜
- HTTPMESSAGE
- HTTP3
- Git
- 데이터베이스 방언
- Invalid bound statement (not found)
- hibernate.dialect
- @Entity
- RFC723x
- KAKAOLOGINAPI
- http
- anyMatch
- 네이버로그인API
- 자바ORM표준프로그래밍
- 김영한JPA
- org.apache.ibatis.binding.BindingException
Archives
- Today
- Total
twocowsong
연관관계 매핑 기초 본문
엔티티들은 대부분 다른 엔티티와 연관 관계가 있습니다.
예를들어 주문 엔티티는 어떤 상품을 주문했는지 관계가있고 상품엔티티는 카테고리, 재고 등 다른 엔티티와의 관계가 있습니다. 그런데 객체는 참조(주소)를 사용해서 관계를 맺고 테이블은 외래키를 사용해서 관게를 맺습니다.
이 둘은 완전히 다른 특징을 가집니다.
객체 관계 매핑ORM 에서 가장 어려운 부분이 바로 객체 연관 관계와 테이블 연관 관계를 매핑하는 일 입니다.
객체의 참조와 테이블의 외래 키를 매핑하는것이 이장의 목표입니다.
시작전 연관관계 매핑을 이해하기 위한 핵심 키워드를 정리해보겠습니다.
- 방향 : [단방향, 양방향], 예를들어 회원과 팀이 관계가 있을 때 회원 -> 팀 또는 팀 -> 회원 둘 중 한쪽만 참조하는것을 단방향 관계라 하고, 회원 -> 팀, 팀 -> 회원 양쪽 모두 서로 참조하는 것을 양방향 관계라 합니다. 방향은 객체관계에만 존재하고 테이블 관계는 항상 양방향입니다.
- 다중성 : [N : 1, 1 : N, 1 : 1, N : M] 다중성이있습니다. 예를들어 회원과 팀이 관계가 있을 때 여러 회원은 한 팀에 속하므로 회원과 팀은 N : 1 관계입니다. 반대로 한 팀에 여러 회원이 소속될 수 있으므로 팀과 회원은 1 : N 관계입니다.
- 연관관계의 주인 : 객체를 양방향 연관관계로 만들면 연관관계의 주인을 정해야 합니다.
'IT > JPA' 카테고리의 다른 글
순수한 객체 연관관계 (0) | 2022.05.27 |
---|---|
객체 연관관계와 테이블의 연관관계 (0) | 2022.05.25 |
[실전 예제] 요구사항 분석과 기본 매핑 (0) | 2022.05.22 |
중간 정리 (0) | 2022.05.21 |
@Transient (0) | 2022.05.21 |