JPA 3

[JPA] 영속성 전이 (CASCADE)

1. 영속선 전이 (CASCADE)1:N, 1:1 관계에서 하위(자식) 엔티티를 상위(부모) 엔티티에서 어떻게 처리할지에대한 설정ALL - 모든 옵션PERSIST - 엔티티 영속화시 하위 엔티티를 같이 영속화MERGE - 엔티티 병합시 하위 엔티티를 같이 병합REMOVE - 엔티티 삭제시 하위 엔티티를 같이 삭제REFRESH - 엔티티를 새로고침시 하위 엔티티를 같이 새로고침 (DB에서 즉시 로딩하여 덮어 씌움)DETACH - 엔티티를 영속성 컨텍스트에서 분리하면 하위 엔티티도 같이 분리* Enum 타입을 보면 알겠지만 모든 옵션이 EntitiyManager 의 메소드들과 의미가 같다. 2. 사용 예보통 1:N 관계에서 상위 엔티티를 저장할때 하위 엔티티를 같이 저장하고 싶을때 주로 사용(PERSIST)..

JPA 2024.07.25

[JPA] @EntityListener

Entity를 DB에 적용하기 이전 이후에 커스텀 콜백을 요청할 수 있는 어노테이션으로,해당 Entity Life Cycle 중 특정 시점에 우너하는 로직을 처리할 수 있게 한다. 시점@PrePersist : 새로운 Entity에 대해 persist가 호출되기 전@PreUpdate : Entity 업데이트 작업 전@PreRemove : Entity 제거되기 전@PostPersist : 새로운 Entity에 대해 persist가 호출된 후@PostUpdate : Entity 업데이트된 후@PostRemove : Entity 삭제 후@PostLoad : Select 조회가 일어난 직후에 실행

JPA 2024.07.11