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

이남규님의 프로필 이미지
이남규

작성한 질문수

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

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

양방향 관계에서 '주인이 아닌쪽은 읽기만 가능'의 의미가 궁금합니다.

작성

·

200

1

안녕하세요, 김영한 강사님.

양방향 매핑 관계에서 

'주인이 아닌쪽은 읽기만 가능하다' 라고 설명해 주셨는데요,

이 의미가 잘 이해가 가지 않습니다.

저는 이를 이해하기로,

Member(하인) - Order(주인) 관계에서

List<Order> orders = member.getOrders();

로 가져온 order 객체들에 대해 수정이 불가능하다라고 이해를 했는데요, 간단한 실험을 해보니

orders.forEach(order -> {
    order.setOrderStatus(OrderStatus.CANCEL);
    entityManager.persist(order);
 });

의 방법으로 order들이 update 되는 것을 확인할 수가 있었습니다.

반대로 order.getMember(); 로 가져온 member들에도 수정이 가능했고요.

혹시 제가 잘못 이해하고 있는것일까요?

감사합니다.

답변 1

1

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

안녕하세요. 남규님

주인이 아닌쪽은 읽기만 가능하다라는 뜻은 연관관계를 수정할 때를 이야기합니다.

다음 코드만 실행하면 아무런 변경이 없다는 뜻입니다.

member.getOrders().add(order)

감사합니다.

이남규님의 프로필 이미지
이남규
질문자

이해했습니다, 감사합니다!

이남규님의 프로필 이미지
이남규

작성한 질문수

질문하기