다양한 연관관계 맵핑2(1:N)

Mina Park·2022년 9월 8일
0

1. 일대다 단방향

  • 일(1)이 연관관계의 주인
  • 테이블의 경우 항상 다(N)쪽에 외래키가 존재
  • 객체와 테이블간 패러다임이 다르기 때문에 반대편 테이블의 외래키를 관리하는 특이한 구조
    • 사실상 실무에서는 이러한 연관관계 설정 지양
  • @JoinColumn 필수 사용
    • 미사용시 조인 테이블 방식을 사용(중간테이블이 추가됨)

일대다 단방향 맵핑의 단점

  • 엔티티가 관리해야하는 외래키가 다른 테이블에 존재
  • 연관관계 관리를 위해 추가적으로 다른 테이블로 건너가서 update 쿼리
    📌 일대다 단방향 => 다대일 양방향 맵핑을 사용하자!!
    (억지로 참조값을 넣어 양방향을 맺더라도 외래키 관리가 훨씬 용이)

2. 일대다 양방향

  • 공식적으로는 존재하지 않는 맵핑 방식(다소 억지로 구현)
  • @JoinColumn(isnertable=false, updatable=false_
    • 위와 같은 어노테이션 삽입시 읽기 전용과 같은 역할
      📌마찬가지로 다대일 양방향을 사용하자!!

0개의 댓글