JPA - @JoinColumn 정리
2024. 7. 18. 21:03ㆍWeb/JPA
참고블로그
https://ksh-coding.tistory.com/105
@JoinColumn의 name 속성
name 속성은 연관관계의 주인(@JoinColumn을 가진)의 테이블의 FK 필드명을 뜻한다.
* 참조하는 Entity가 존재할 경우
: 참조하는 Entity의 필드명 + "_" + 참조된 기본 키 열의 이름
public class Station {
...
@ManyToOne
@JoinColumn
private Line line;
}
: 참조하는 Entity(Station)의 필드명(line) + "_" + 참조된 Entity(Line)의 기본 키 열의 이름(id)
: line + "_" + id = "line_id"
위 클래스를 기반으로 설명을 하자면, Station은 Line과 연관 관계가 있는데, Station 데이터베이스 테이블에 Line과의 연관관계인 FK가 LINE_ID 필드로 되어 있다는 설정.
기본값 : 위 클래스 기준 Line 필드명(line) + Line클래스의 PK 필드명
@JoinColumn의 referencedColumnName 속성
referencedColumnName속성은 연관관계의 주인(@JoinColumn을 가진)과 연관관계에 있는 테이블의 PK 필드명(연관 관계 주인의 FK와 연결되는 필드)을 뜻한다.
기본값 : 위 클래스 기준 Line클래스의 PK 필드명
'Web > JPA' 카테고리의 다른 글
JPA - LazyInitializationException No Session(다중 스레드 트랜잭션,Multi Thread Transaction) (1) | 2019.05.29 |
---|---|
Spring JPA - JPA cascade 란?! (0) | 2019.04.29 |
JPA - 영속성 컨텍스트와 JPQL (0) | 2019.02.12 |
JPA - JPAQuery와 Q클래스 (0) | 2019.02.11 |
JPA - NativeQuery ( SQL ) 네이티브 SQL 사용하기! (0) | 2019.02.11 |