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

taetae님의 프로필 이미지
taetae

작성한 질문수

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

도메인 모델과 테이블 설계

엔티티 분석에 관하여

작성

·

190

0

안녕하세요 강사님 강의를 바탕으로  개인적으로 개발을 위해 엔티티를 짜고 있는 와중에 궁금한 점이 생겨 문의드립니다!

Member 엔티티와 Order 엔티티 간의 관계에서   Member 엔티티에서는 orders로 list타입으로 이용하였는데

Order 엔티티에서는 member는 list타입이 아닌 Member 타입으로 되어있는 것을 보고 

list타입과 필드타입이 서로 어떤때에 쓰이는지 왜 list타입으로 쓰였는지 궁금합니다!

답변 1

0

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

다대일 혹은 일대다 연관관계와 관련된 질문이네요.

다음과 같은 예시가 있을 수 있습니다.

- 한 팀에는(1) 여러 선수가 존재한다(N) == (TEAM , List<Player>)

- 서점(1) 에는 여러 책이 존재한다(N) == (BookStore, List<Book>)

- 회사 프로젝트(1)에는 여러 직원이 투입된다(N) == (Project, List<Employee>)

 

List는 여러(다수)의 데이터를 관리하기 위한 용도라고 생각하시면 됩니다.

감사합니다. 

taetae님의 프로필 이미지
taetae
질문자

답변 감사합니다:)

그렇다면 order와 member 사이에서 Order 엔티티에서 member는 List타입이 아니라 Member 그 자체로 왔는지 궁금합니다!!

위에서 설명드린 관점에서 말씀드리면 1개의 서점, 프로젝트 1회, 1개의 팀  각각의 객체 혹은 엔티티라고 불리는 것이 말씀 하시는 member라고 보시면 됩니다.

Member taetae=Member();

Order order1=..

Order order2=..

List<Order> taetaeOrderList =..

taetaeOrderList.add(order1)

taetaeOrderList.add(order2)

이와같은 절차로 taetae님의 주문이 생성된거고

위에서 taetae를 omg로 바꾸면 제 주문이 되겠죠?

각각의 Member에 대한 아이템들의 관계를 나타낸다고 이해하시면 됩니다

taetae님의 프로필 이미지
taetae

작성한 질문수

질문하기