본문 바로가기
자바의 봄(Spring)/자바와 스프링 공부하기

양방향 연관 관계

by 종안이 2024. 4. 21.

 

1. 양방향 연관 관계

- 서로 단방향 연관 관계 2개를 만든게 양방향 연관 관계라고 부른다. 

 

2. 하지만 DB에서는 외래키 (FK) 하나만 있으면 서로 다른 두 테이블이 모두 왔다갔다 할 수 있다. 

 

3. 연관 관계의 주인 

- 연관 관계의 주인만이 외래 키를 관리할 수 있다. 

- 주인이 아닌 쪽은 읽기만 가능하다. 

- 주인은 mappedBy 

- 외래키가 있는 곳을 주인으로 정해라 

 

4. 양방향 맵핑 시 발생할 수 있는 문제 

- 무한 루프가 발생할 수 있다. ex toString , lombok , JSON 생성 라이브러리 ( 컨트롤러에서는 엔티티를 반환하지 말자 , 계속 참조하기 때문에 무한 루프가 발생 할 수 있다. ) 

- 설계 시 단방향 맵핑으로 연관 관계 맵핑을 완료시키는 것이 좋다. 

- 양방향으로 설계하면 별로 좋지 않다. 

 

 

댓글