John's Code Journey

[Spring Boot] 생성일 자동 설정 비교 본문

IT공부/Spring Boot

[Spring Boot] 생성일 자동 설정 비교

Johnnnn 2025. 4. 8. 11:40
728x90

✅ @CreatedDate vs @CreationTimestamp

 

  @CreatedDate @CreatedTimestamp
제공 Spring Data JPA Hibernate
조건 @EnableJpaAuditing + @EntityListeners 필요 별다른 설정 없이 작동
작동 시점 persist() 전 단계에 Spring이 값 지정 Hibernate가 insert 시점에 DB에 넣음
장점 더 유연하게 커스터마이징 가능 설정이 간단하고 빠르게 적용됨
단점 설정 필요 (Auditing) Spring Data Auditing과 중복되면 ❌ 충돌 가능

🟢 요약

  • 둘 다 "생성일 자동 설정"이지만 작동 방식이 다르고, 중복해서 쓰면 안 됨!
  • Spring에서 BaseEntity 만들어서 @CreatedDate 사용하는 걸 선호하는 추세라고함.
    → 그럼 하나의 방식으로 전 엔티티가 관리돼서 협업에 유리하다.

❌ 주의할 점!

프로젝트에 @EnableJpaAuditing 이 설정돼 있어야 함.
보통 @SpringBootApplication 클래스 위에 추가함.

@EnableJpaAuditing
@SpringBootApplication
public class MyApplication { ... }

그리고 AuditingEntityListener도 @EntityListeners에 꼭 지정돼야 작동함.

'IT공부 > Spring Boot' 카테고리의 다른 글

[Spring Boot] 개발 순서 가이드  (0) 2025.05.09
[Spring Boot] Validation 검증  (0) 2025.04.28
[Spring Boot] Persistence Context 영속성 컨텍스트  (0) 2025.04.17
[Spring Boot] IoC/DI  (0) 2025.04.02
[Spring Boot] 기본 흐름  (1) 2025.04.02