티스토리 뷰

반응형

 

 

 



 

 

 

 

이벤트 실행시점 설명
@PrePersist 엔티티가 생성될 때 엔티티가 생성될 때마다 실행되어야 하는 로직을 구현하는 데 사용됩니다. 
예를 들어, 엔티티가 생성될 때마다 현재 날짜를 값으로 설정하는 로직을 구현할 수 있습니다.
@PreUpdate 엔티티가 업데이트 될 때 엔티티가 업데이트될 때마다 실행되어야 하는 로직을 구현하는 데 사용됩니다. 
예를 들어, 엔티티가 업데이트될 때마다 변경된 값을 기록하는 로직을 구현할 수 있습니다.

 

 

 

특정값을 변경했을 때 변경일을 등록하는 부분을 작성할일 있었는데

나는 @PrePersist 가 Insert, Update 시에 동일하게 작동한다고 생각하고 코드를 작성했는데

Update 테스트를 아무리해도 적용이 되질 않아...

 

혹시 엔티티가 생성될 때만 되나하고 Insert 구문을 수행하니 적용되는 것을 보고

내가 잘못 인지했음을 깨닫고  @PreUpdate 어노테이션을 찾아 비교하게 되었다.

 

 

 

 

 

@PreUpdate
public void onPreUpdate() {
  if(this.resultType.equals("Y") && (this.resultDate == null || this.resultDate.isEmpty()) ) {
    this.resultDate = LocalDate.now().toString();
  }
}

resultType 값이 "Y" 로 변경되고 resultDate 값이 없을 경우에만 resultDate 값을 현재 날짜를 넣어주게 해줬다.

 

 

 

 

글을 잘못 읽으면 이런 불상사에 빠진다.

 

 

 



 

 

반응형
댓글
반응형
최근에 올라온 글
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Total
Today
Yesterday