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

YOGURT님의 프로필 이미지
YOGURT

작성한 질문수

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

영속성 전이(CASCADE)와 고아 객체

고아객체

작성

·

308

0

@OneToMany(mappedBy = "parent", fetch = FetchType.LAZY, orphanRemoval = true, cascade = CascadeType.PERSIST  )
List<Child> children = new ArrayList<>();

위에 코드에서 고아객체를 삭제했기 때문에 children.remove(0); 을 하면 첫번째 child가 삭제되어야 하지만 cascade = CascadeType.PERSIST를 제거하면 delete쿼리가 발생하지 않습니다 PERSIST는 영속화될 때 같이 영속화하는 속성으로 알고있는데 제거하면 고아객체 삭제가 왜 되지 않는것인지 궁금합니다.

 

그리고 mappedBy를 사용한 children은 주인이 아니라서 chindlren.add(child)를 해도 반영이 되지 않는걸로 알고있는데 PERSIST속성을 주면 주인이 아니여도 둘 다 영속화가 되는것인지 궁금합니다.

답변 1

0

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

안녕하세요. YOGURT님^^

1번 질문은 다음을 참고해주세요.

https://www.inflearn.com/questions/137740

2번 질문은 다음을 참고해주세요.

https://www.inflearn.com/questions/15855

감사합니다.

YOGURT님의 프로필 이미지
YOGURT

작성한 질문수

질문하기