1. 양방향 연관 관계
- 서로 단방향 연관 관계 2개를 만든게 양방향 연관 관계라고 부른다.
2. 하지만 DB에서는 외래키 (FK) 하나만 있으면 서로 다른 두 테이블이 모두 왔다갔다 할 수 있다.
3. 연관 관계의 주인
- 연관 관계의 주인만이 외래 키를 관리할 수 있다.
- 주인이 아닌 쪽은 읽기만 가능하다.
- 주인은 mappedBy
- 외래키가 있는 곳을 주인으로 정해라
4. 양방향 맵핑 시 발생할 수 있는 문제
- 무한 루프가 발생할 수 있다. ex toString , lombok , JSON 생성 라이브러리 ( 컨트롤러에서는 엔티티를 반환하지 말자 , 계속 참조하기 때문에 무한 루프가 발생 할 수 있다. )
- 설계 시 단방향 맵핑으로 연관 관계 맵핑을 완료시키는 것이 좋다.
- 양방향으로 설계하면 별로 좋지 않다.
'자바의 봄(Spring) > 자바와 스프링 공부하기' 카테고리의 다른 글
JPA란 무엇인가 ? (0) | 2024.04.20 |
---|---|
UserDetailsService와 UserDetails에 대해 (0) | 2024.04.01 |
JPA에서 인덱스 생성하기 (0) | 2024.03.23 |
@Builder 패턴을 쓰는 이유 (0) | 2024.03.09 |
HttpServletRequest (0) | 2024.02.05 |
댓글