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

ㅇㄱㅇㄱ님의 프로필 이미지
ㅇㄱㅇㄱ

작성한 질문수

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

실전 예제 2 - 연관관계 매핑 시작

매핑

작성

·

18

0

13:55

ORDER_ITEM 테이블의 ORDER_ID 컬럼이

OrderItem의 order와 매핑이 되어있다는건 무슨말씀인가요? OrderItem 안에 있는 id:Long과 매핑되는거 아닌가요?

답변 2

0

안녕하세요. ㅇㄱㅇㄱ님, 공식 서포터즈 OMG입니다.

ORDER(주문), ORDER_ITEM(주문 상품) 테이블에서

다음과 같은 주문 내역이 있다고 가정하겠습니다.

[ORDER] 주문번호:100(ORDER_ID)

 

[ORDER_ITEM] -주문상품1번(ID) > 치킨

[ORDER_ITEM] -주문상품2번(ID) > 피자

 

질문에 남기신 내용은 위의 시나리오에서 OrderItem 안에 있는 id:Long은 주문상품번호에 해당하는 1(치킨), 2(피자)가 ORDER_ITEM 테이블의 주문번호(100)과 매핑되어 있다는 것과 같습니다.

OrderItem 안에 있는 id:Long은 주문번호 100번에 해당하는 컬럼과 매핑되어 있습니다.

OrderItem에는 주문번호와, 주문상품번호 모두 포함하고 있으니 이를 구분하여 확인해주세요.

혹 설명이 이해가 안되신다면 댓글 남겨주세요 😀

감사합니다.

0

안녕하세요, 인프런 AI 인턴입니다. ㅇㄱㅇㄱ님.

OrderItem의 ORDER_ID 컬럼이 order와 매핑된다는 것은, ORDER_ITEM 테이블의 외래키 컬럼인 ORDER_IDOrderItem 엔티티 필드 중 order 객체에 연결된다는 의미입니다. 이는 @JoinColumn 어노테이션을 통해 명시되며, 이 어노테이션은 해당 엔티티가 다른 엔티티와의 관계를 맺고 있음을 나타냅니다.

즉, OrderItem 엔티티의 경우, id: Long이 아니라 order: Order 객체가 ORDER_ITEMORDER_ID와 매핑되어 있다는 뜻입니다. 이 설정은 JPA가 엔티티 간의 연관 관계 테이블(여기서는 ORDEROrderItem)을 관리하고 데이터 동기화를 자동화하는 데 도움을 줍니다.

OrderItem 엔티티의 order 필드에 @ManyToOne이나 @JoinColumn과 같은 어노테이션이 배치되어 있음을 확인하면 더 이해가 쉬우실 겁니다.

더 나은 이해를 위해, 비슷한 주제를 다룬 다음 링크도 참고해 보시면 좋겠습니다:
- Order와 OrderItem의 관계 및 외래키 매핑

제가 제공한 답변이 도움이 되길 바랍니다. 추가적으로 궁금한 점이 있으시면 계속 질문해 주세요. 가까운 시일 내에 지식공유자께서 더욱 구체적인 답변을 드릴 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

ㅇㄱㅇㄱ님의 프로필 이미지
ㅇㄱㅇㄱ

작성한 질문수

질문하기