영속성 

CascadeType.ALL: 모든 Cascade를 적용
CascadeType.PERSIST: 엔티티를 영속화할 때, 연관된 엔티티도 함께 유지
CascadeType.MERGE: 엔티티 상태를 병합(Merge)할 때, 연관된 엔티티도 모두 병합
CascadeType.REMOVE: 엔티티를 제거할 때, 연관된 엔티티도 모두 제거
CascadeType.DETACH: 부모 엔티티를 detach() 수행하면, 연관 엔티티도 detach()상태가 되어 변경 사항 반영 X
CascadeType.REFRESH: 상위 엔티티를 새로고침(Refresh)할 때, 연관된 엔티티도 모두 새로고침

 

Question N : User 1 관계일 때

User user = new User(?);

Question question = Question.builder(?).title(?).user(user).build();

questionRepository.save(question);

할 경우 exception 발생.

=> Question Entity 연관관계 매핑(@ManyToOne)에서 CascadeType.PERSIST 를 지정할 경우 User 객체도 영속성이 전이됨(영속화)

 

 

https://zzang9ha.tistory.com/350

 

반응형

'back > JPA' 카테고리의 다른 글

[JPA] equals , hashcode  (0) 2022.11.08
[JPA] JPQL, QueryDSL  (0) 2020.03.21
[JPA] JPA 영속성 컨텍스트  (0) 2020.03.08
[JPA] 연관관계 매핑 : 단방향, 양방향 매핑  (0) 2020.03.01
[JPA] JPA 기초 설정 및 entity 필드 매핑  (0) 2020.02.27

+ Recent posts