(Spring Boot) 엔터티 개체 등록/수정 날짜 자동화

등록일/수정일은 데이터의 중요한 정보입니다.

Registration Date Column과 Modification Date Column은 자주 사용하기 때문에 알아두시면 좋을 것 같아서 이 글을 작성하게 되었습니다.

먼저 엔티티 클래스를 대신하여 @EntityListeners(AuditingEntityListener.class)붙여넣기

데이터 생성 시 @CreatedDate데이터 변경 시 @마지막 수정 날짜추가

package com.example.demo.boundedContext.article.entity;

import jakarta.persistence.Entity;
import jakarta.persistence.EntityListeners;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.Id;
import lombok.*;
import org.springframework.data.annotation.CreatedDate;
import org.springframework.data.annotation.LastModifiedDate;
import org.springframework.data.jpa.domain.support.AuditingEntityListener;

import java.time.LocalDateTime;
import static jakarta.persistence.GenerationType.IDENTITY;

@Entity
@Builder
@Getter
@AllArgsConstructor
@NoArgsConstructor
@EntityListeners(AuditingEntityListener.class) // 추가
public class Article {
    @Id // 기본키
    @GeneratedValue(strategy = IDENTITY) // auto_increment
    private long id;
    @CreatedDate // 추가
    private LocalDateTime createDate; // 데이터 생성 날짜
    @LastModifiedDate // 추가
    private LocalDateTime modifyDate; // 데이터 수정 날짜
    private String title;
    private String body;
}

응용 프로그램 클래스에서 @EnableJpa감사에 추가

@SpringBootApplication
@EnableJpaAuditing // 추가
public class DemoApplication {

    public static void main(String() args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}