인프런 커뮤니티 질문&답변

구구구구규규국님의 프로필 이미지
구구구구규규국

작성한 질문수

자바 ORM 표준 JPA 프로그래밍 - 기본편

다대일 연관관계 매핑 @JoinColumn 외래키 관련 질문드립니다.

작성

·

247

0

안녕하세요! 다들 고생이 많으십니다.

다대일 연관관계 매핑 중 질문이 있습니다.

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "team_id", nullable = false, updatable = false)
private Team team;
  1. 위와 같이 다대일 연관관계 매핑시 @JoinColumn을 지정하여 외래키를 설정하여 관리 되는데

이 경우 jpa가 생성하는 ddl을 보면 항상 물리적인 외래키가 항상 생성되고,

@JoinColumn 생략 하더라도 물리적인 외래키가 생성되고 있는데

필요에 따라 물리적인 외래키를 설정하지 않고 연관관계를 맺고 싶을때는 어떤 설정을 걸어야 할까요?

  1. 방법이 있다면 @JoinColumn을 사용하여 일반적으로 생성된 물리적인 외래키가 존재하는 것과 JPA가 동작하는데 차이가 있을까요?

  2. 다른 방법이 없다면 최초 DDL 생성 이후 ddl-auto 옵션을 끄고, 엔티티 소스는 @JoinColumn을 유지하고 DB상 물리적인 외래키만 지우더라도 JPA가 동작 하는데에는 별다른 이슈가 없을까요?

     

     

    ** 추가로 강의, JPA 책 중 관련 내용이 있는 곳 이 있다면 알려주시면 감사하겠습니다.

감사합니다.

답변 1

1

안녕하세요. 이준영님, 공식 서포터즈 David입니다.

아래 글 답변을 참고해주세요.

https://discourse.hibernate.org/t/map-one-object-to-another-object-without-using-foreign-key/1640

감사합니다.

감사합니다. 관련 내용을 확인 해보겠습니다.

구구구구규규국님의 프로필 이미지
구구구구규규국

작성한 질문수

질문하기