• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

연관관계 매소드 양방향 관계

23.05.09 02:16 작성 조회수 391

1

  1. 양방향으로 관계가 어떤 경우일까요?

    1대다, 다대다 이런 경우를 말하는건가요?

     

  2. 연관관계 메서드가, 객체를 생성하고 값을 셋팅할때 한개라도 빼먹는 경우가 있어서 간편하게 하려고 두개를 묶어서 나타내는 것이라고 생각하면 맞나요?

     

  3. 강의 25분 9초에서 연관 관계 메서드를 왜 적어줘야 하는지 잘 모르겠습니다. 그러니까, order라는 엔티티를 만든 곳에 member객체를 필드명 member 와 구별하기 위해 this.member = member 하면서 셋팅을 하고, member.getOrders().add(this) 즉, 회원 주문에 회원이름을 넣어주고? 이거를 여기에 기본적으로 셋팅해주는 이유가 뭔가요??

답변 1

답변을 작성해보세요.

1

codesweaver님의 프로필

codesweaver

2023.05.10

안녕하세요, 김지수 님! 공식 서포터즈 codesweaver 입니다.

1. 양방향이라는 것은 1:N, N:N 보다는 객체가 서로를 참조하고 있는지 여부입니다. (객체그래프 탐색을 상호간에 지원하는가 라고 할수도 있습니다). 가령 Member와 Team 엔터티가 있을 때, Member객체에서 Team 객체로 탐색할 수 있는 방업을 제공하며 동시에 Team에서 Member 객체로 탐색할 수 있는 방법을 제공한다면 이 경우가 양방향 관계입니다.

2.네 맞습니다.

  1. 1번에서 설명드렸듯 Order와 Member 사이의 양방향 관계를 설정하기 위해 연관관계 메서드를 사용합니다. member.getOrders().add(this) 코드에서 this는 회원 주문리스트에 현재 주문 인스턴스를 연결한다(추가한다)는 의미의 코드입니다.

    감사합니다.