인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

kelvin님의 프로필 이미지
kelvin

작성한 질문수

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

식별관계 일대일 매핑

작성

·

239

0

안녕하세요!

erd에서 game테이블에 gameId 주키가 있고, gameInfo 테이블에 주키는 gameId여서

game와 gameInfo가 식별관계인 경우 entity는 아래와 구성했습니다.


이렇게 구성이 되면 gameInfo를 저장할때 로직 상에서 gameId를 세팅해서 save해야 하나요?

즉 game을 저장하고 gameInfo에서 setGameId(game.getGameInfo) 이런식으로 세팅하고

save(gameInfo)로 진행해야 하나요?!

강의 너무  잘보고 있습니다.

감사합니다.

답변 1

1

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. kelvin님^^

이미 game에 id 값이 들어있는데, GameInfo.setGameId(...) 이렇게 선언하는게 뭔가 좀 이상하시지요^^?

지금처럼 PK가 복합키 아니라 단일키면 @MapsId("gameId") 이렇게 하지 마시고, @MapsId 이렇게 선언해주시면 됩니다.

그러면 gameInfo.setGame(game) 이렇게만 선언하셔도 잘 동작합니다. 물론 game은 미리 영속상태로 만들어두셔야 합니다.

도움이 되셨길 바래요^^

kelvin님의 프로필 이미지
kelvin

작성한 질문수

질문하기