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

tommy7899님의 프로필 이미지
tommy7899

작성한 질문수

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

엔티티 설계시 주의점

질문있습니다!!

작성

·

289

0

강의를 보던 중에 연관 관계 메소드에 관련되어서 질문이 있습니다.

Category 클래스에서 보면 엔티티 안에서 멤버 변수들끼리 양방향 관계를 맺는 parent랑 child가 있는데 아래 코드가 잘 이해가 안됩니다. this.child는 멤버 변수 child를 의미하는데 child 리스트 안에 파라미터인 child를 넣는다는 뜻인건가요? 그리고 child.setParent에는 왜 this가 들어가나요..? this는 객체 자신인 Category라고 알고 있는데 제가 잘못 안건가요?

public void addChildCategory(Category child){
this.child.add(child);
child.setParent(this);
}

답변 1

1

Category(this)의 child에 인자로 받은 child(a)를 add하고,

child(a)의 parent를 Category(this)로 set.

거꾸로

child(a)의 parent를 Category(this)로 set하고,

Category(this)의 child에 인자로 받은 child(a)를 add.

 

|Category |

|     child   |<----   |child(a)|

                                  | parent |  <----  |Category(this)|


저는 이렇게 이해했는데 설명하려니 쉽지 않네요;

혹시 제가 잘못 이해했다면 알려주세요~ 

 

 

 

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

Klolarion님 감사합니다^^

tommy7899님의 프로필 이미지
tommy7899

작성한 질문수

질문하기