-
Spring boot JPA CASCADESpring boot 2020. 3. 13. 15:18반응형
# JPA CascadeType 종류
## 1. 배경
- JPA 개인 프로젝트를 진행하던 중, 게시판과 파일, 댓글에서 @OneToMany - @ManyToOne의 관계에서 영속성 관리에서 문제가 발생되었으며, 영속성에서 참조된 객체를 지워주지 않았기 때문에 발생하였다. 더 정확한 내용은 알아볼 예정이다.
## 2. 내용
-
CascadeType.PERSIST
엔티티를 영속화 할 때이 필드에 보유 된 엔티티도 유지합니다. EntityManager가 flush 중에 새로운 엔티티를 참조하는 필드를 찾고이 필드가 CascadeType.PERSIST를 사용하지 않으면 오류이므로이 Cascade 규칙의 자유로운 적용을 제안합니다. -
CascadeType.MERGE
엔티티 상태를 병합 할 때, 이 필드에 보유 된 엔티티도 병합하십시오. -
CascadeType.REFRESH
엔티티를 새로 고칠 때, 이 필드에 보유 된 엔티티도 새로 고칩니다. -
CascadeType.REMOVE
엔티티를 삭제할 때, 이 필드에 보유 된 엔티티도 삭제하십시오. -
CascadeType.DETACH
부모 엔티티가 detach()를 수행하게 되면, 연관된 엔티티도 detach() 상태가 되어 변경사항이 반영되지 않는다. -
CascadeType.ALL
모든 Cascade 적용
## 3. 참조
- http://stackoverflow.com/questions/13027214/jpa-manytoone-with-cascadetype-all
반응형'Spring boot' 카테고리의 다른 글
Tomcat 7.x : POST 전송 - maxPostSize 속성값 minor 버전에 따른 설정 차이 (0) 2020.08.18 Spring에서 JPA / Hibernate 초기화 전략 (0) 2020.03.24 JPA 패턴 (0) 2020.03.24 Spring JpaRepositoy (0) 2020.03.13 Spring boot JWT (0) 2020.03.10 -