본문 바로가기
Spring

[JPA] 연관 관계 - 1:1

by diaryDev 2025. 1. 8.
728x90

일대일 연관 관계

주 테이블과 대상 테이블이 관계를 맺는다.

주 테이블 : 주체가 될 수 있는 대상

대상 테이블 : 주체에 의해 관계가 맺어지는 대상

 

주 테이블이나 대상 테이블 둘 중 어느 곳이나 외래키를 가질 수 있다.

 

주 테이블에 외래 키

- 주 테이브에 외래 키를 두고 대상 테이블을 찾는다.

- 외래 키에 해당하는 대상 테이블을 객체 참조와 비슷하게 사용할 수 있기에 객체지향 개발자 선호

- 주 테이블만 조회해도 대상 테이블에 데이터가 있는지 확인 가능하다.

 

- 단점: 값이 없으면 외래 키에 null이 허용 된다.

 

대상 테이블에 외래 키

- 대상 테이블에 외래 키가 존재한다.

- 데이터베이스 개발자 선호

- 테이블 관계를 1:1에서 1:N으로 변경할 때, 테이블 구조를 유지할 수 있다.

 

- 단점 : 프록시 기능의 한계로 지연 로딩으로 설정해도 항상 즉시 로딩된다.

 

 


 

 

참고

https://velog.io/@yuseogi0218/JPA-%EC%9D%BC%EB%8C%80%EC%9D%BC-%EC%97%B0%EA%B4%80%EA%B4%80%EA%B3%84-1

728x90

'Spring' 카테고리의 다른 글

[JPA] @OneToOne  (0) 2025.01.10
[JPA] @GeneratedValue - AUTO  (0) 2025.01.06
[JPA] @GeneratedValue - SEQUENCE  (0) 2025.01.01
[JPA] @GeneratedValue - IDENTITY  (0) 2024.12.30
[JPA] 기본 키 매핑 방법 - @Id, @GeneratedValue  (1) 2024.12.27