JPA를 사용하면서 DB에 생성된 시간 정보와 수정된 시간 정보를 자동으로 저장할 때 사용하는 것이 @CreatedDate와@LastModifiedDate이다. 이 두 가지를 사용하는 방법을 알아보자.
💡@CreatedDate @LastModifedDate
자동으로 시간을 저장하려는 Column에 @CreatedDate와 @LastModifedDate를 붙여준다. 또한 클래스에 @EntityListeners(AuditingEntityListener.class)를 붙여준다.
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;
import org.springframework.data.annotation.CreatedDate;
import org.springframework.data.annotation.LastModifiedDate;
import org.springframework.data.jpa.domain.support.AuditingEntityListener;
import javax.persistence.*;
import java.time.LocalDateTime;
@Entity
@Builder
@Getter
@NoArgsConstructor
@AllArgsConstructor
@EntityListeners(AuditingEntityListener.class)
public class User {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="user_id")
private int userId;
@CreatedDate
@Column(name="creation_date")
private LocalDateTime creationDate;
@LastModifiedDate
@Column(name="recent_Date")
private LocalDateTime recentDate;
}
💡@EnableJpaAuditing
@EnableJpaAuditing을 추가한다.
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.data.jpa.repository.config.EnableJpaAuditing;
@EnableJpaAuditing
@SpringBootApplication
public class TestApplication {
public static void main(String[] args) {
SpringApplication.run(TestApplication.class, args);
}
}
'🌝Coding > 🌟SpringBoot' 카테고리의 다른 글
[SpringBoot] JPA (0) | 2023.11.21 |
---|---|
[SpringBoot] DB 연결 (0) | 2023.11.20 |
[SpringBoot] Spring Initializr (0) | 2023.11.20 |