CH06 다양한 연관관계 매핑
Last updated
Last updated
이번 장은 다대일, 일대다, 일대일, 다대다의 관계 매핑을 이전 장에 배운 것들을 바탕으로 실제로 어떻게 처리하는지 예제 코드와 함께 학습하는 내용이었다. 사실 실무에서 JPA 를 사용해본 사람이라면 쉬운 내용들이어서 정리는 생략한다.
다만 그래도 정리할 포인트가 몇 가지 있어서 아래에 정리한다.
개인적으로 주 테이블에 null 들어가는거 감수하고 외래키를 주 테이블에 두는게 성능 관련해서 로직을 컨트롤 하는데 훨씬 유리했다. 주 테이블의 컬럼을 최소화하고 연관 속성들을 테이블로 따로 빼서 주테이블의 PK를 외래키로 가지고 데이터를 관리하게되면 그 테이블 수 만큼 조인이 막 걸려서 원치 않는 조회가 계속 발생한다.
그냥 주 테이블에 nullable 하게 외래키를 두고 관리하자.
결론적으로 브릿지테이블 이런거 절대로 쓰지말고 아래와 같이 엔티티 승격하여 해당 엔티티가 양쪽 정보를 가지고 있도록 하는 것이 방법.
지연로딩 문제는 으로 해결할 수는 있다고 책에 나와있다.