[JPA] 영속성 전이, 고아 객체

Jiwoo Kim·2020년 11월 17일
0

JPA 마스터하기

목록 보기
11/14
post-thumbnail

Transitive Persistence

@{연관관계}(cascade = CascadeType.PERSIST)

  • 부모 클래스 영속 상태 → 자식 클래스 자동으로 영속 상태

@{연관관계}(cascade = CascadeType.REMOVE)

  • 부모 클래스 삭제 → 자식 클래스 자동으로 삭제
  • 삭제 순서는 자식 → 부모

다중 CascadeType

  • cascade = {CascadeType.PERSIST, CascadeType,REMOVE}

Orphan Removal

ORPHAN

부모 엔티티와 연관관계가 끊어진 자식 엔티티

@{연관관계}(orphanRemoval = true)

  • 부모 엔티티에서 자식 엔티티 참조 삭제 → 자식 엔티티 자동으로 삭제
  • 부모 엔티티 삭제 → 자식 엔티티 자동으로 삭제
  • 연관관계는 Owner가 하나인 @OneToOne, @OneToMany여야 한다.

💡 CascadeType.ALL + orphanRemoval = true → 부모 엔티티를 통해 자식 엔티티 생명주기를 관리할 수 있다.


본 포스팅은 자바 ORM 표준 JPA 프로그래밍 (김영한 저)을 읽고 정리한 내용입니다. (2020.09.13)

0개의 댓글