ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Spring boot JPA CASCADE
    Spring 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
Designed by Tistory.