@OneToMany(mappedBy = "parent", cascade = CascadeType.ALL)
private List<Child> childList = new ArrayList<>();
위와같이 OneToMany 관계에서 cascade를 All로 설정하게 되면 연관되있는 자식들에게 상태 전이가 발생한다. 부모를 생성하고 그에 속한 자식을 같이 생성하고 싶을 때 사용할 수 있다.
소유자가 하나일 때 Cascade를 활용하도록 한다.
고아 객체 제거: 부모 엔티티와 연관관계가 끊어진 자식 엔티티를 자동으로 삭제한다.
orphanRemoval = true
Parent parent1 = em.find(Parent.class, id);
parent1.getChildren().remove(0);
// 자식 엔티티를 컬렉션에서 제거
DELETE FROM CHILD WHERE ID =?
아래 강의를 들으면서 정리한 내용입니다.
자바 ORM 표준 JPA 프로그래밍 - 기본편
https://www.inflearn.com/course/ORM-JPA-Basic/