스프링 부트/JPA
스프링 부분 수정 쿼리 @DynamicUpdate
illlilillil
2022. 2. 18. 10:30
개요
프로젝트를 진행하던 중에 수정 쿼리를 날려야 할 상황이 거의 모든 엔티티에 있었습니다.
JPA의 기본 설정은 모든 컬럼을 업데이트하게 되어 있습니다.
대부분의 경우 엔티티마다 전부 수정하는 쿼리를 날리는 경우는 없습니다.
따라서 부분 수정쿼리를 날리는 어노테이션을 찾던중 @DynamicUpdate 을 발견하였습니다.
사용법
사용법은 간단합니다. 엔티티 클래스에 @DynamicUpdate만 붙여주면 변경된 컬럼만 찾아 업데이트를 해줍니다.
자주 사용되는 상태변경이나 조회 수 같은 경우에 사용하면 좋을거 같습니다.
@Entity
@DynamicUpdate
public class Product {
...
}