JPA [기본] 다양한 연관관계 매핑 - 다대다 (N:N)

신재원·2023년 1월 26일
0

JPA 기본

목록 보기
14/31

다대다

  • 관계형 데이터베이스는 정규화된 테이블 2개로 다대다 관계를 표현할수 없다.
  • 연결 테이블을 추가해서 일대다, 다대일 관계로 풀어야한다.
  • @ManyToMany 사용
  • @JoinTable로 연결 테이블 지정
  • 다대다 매핑 : 단방향, 양방향 가능

다대다 매핑의 한계

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

다대다 한계 극복

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

결론적으로 실무에서는 사용하진 않는다.

  • 실무에서는 중간 테이블이 단순하지않다.

0개의 댓글