article thumbnail image
Published 2022. 7. 3. 19:20

1. 다대다

• 관계형 데이터베이스는 정규화된 테이블 2개로 다대다 관계를표현할 수 없음
• 연결 테이블을 추가해서 일대다, 다대일 관계로 풀어내야함

 

1) 객체는 컬렉션을 사용해서 객체 2개로 다대다 관계 가능

 

@ManyToMany 사용
• @JoinTable로 연결 테이블 지정
• 다대다 매핑: 단방향, 양방향 가능

 

2) 객체는 컬렉션을 사용해서 객체 2개로 다대다 관계 가능

• 편리해 보이지만 실무에서 사용X 
• 연결 테이블이 단순히 연결만 하고 끝나지 않음
• 주문시간, 수량 같은 데이터가 들어올 수 있음

 

 

3) 다대다 한계 극복

• 연결 테이블용 엔티티 추가(연결 테이블을 엔티티로 승격) 
• @ManyToMany -> @OneToMany, @ManyToOne

 

 

 

출처 : 김영한, 자바 ORM 표준 JPA 프로그래밍 - 기본편

'JPA' 카테고리의 다른 글

@JoinColumn  (0) 2022.07.03
실전 예제 - 3. 다양한 연관관계 매핑  (0) 2022.07.03
일대일 관계  (0) 2022.07.03
다대일[N:1]  (0) 2022.07.03
연관관계 매핑 시작  (0) 2022.07.03
복사했습니다!