@LastModifiedDate 적용 안됨!?

Yunny.Log ·2022년 5월 23일
0

Debugging

목록 보기
11/69
post-thumbnail

  • 아무리 수정해도 created_at과 modified at이 반영이 되지 않는다.

EntityDate


@EntityListeners(AuditingEntityListener.class)
@MappedSuperclass
@Getter
public abstract class EntityDate {
    @CreatedDate
    @Column(nullable = false, updatable = false)
    private LocalDateTime createdAt;

    @LastModifiedDate
    @Column(nullable = false)
    private LocalDateTime modifiedAt;

ServerApplication.java

@SpringBootApplication
@EnableJpaAuditing
public class ServerApplication{

해결 (6/20)

  • 따라서 위 EntityDate에서 modifiedAt의 setter을 추가해준 뒤, update (PUT) 가 수행되는 곳마다 modifiedAt을 LocalDate 에서 now()를 통해서 갱신시켜주었다.
public abstract class EntityDate {
    @CreatedDate
    @Column(nullable = false, updatable = false)
    private LocalDateTime createdAt;

    @LastModifiedDate
    @Column(nullable = false)
    private LocalDateTime modifiedAt;

    public void setModifiedAt(LocalDateTime modifiedAt) {
        this.modifiedAt = modifiedAt;
    }
}
	

당연히, set Modified at을 통해 set 시켜주므로 modifiedAt은 createdAt 아이와 달리 updatable=true 여야 한다, 이것은 디폴트 값이라서 그냥 저렇게 냅두면 됩니다.

 this.setModifiedAt(LocalDateTime.now());

0개의 댓글