인프런 커뮤니티 질문&답변

제이크서님의 프로필 이미지

작성한 질문수

실전! 스프링 데이터 JPA

새로운 엔티티를 구별하는 방법

@CreationTimestamp와 @CreatedDate의 선택

작성

·

5K

2

저는 평소에 실무에서 @CreationTimestamp를 썼는데요. 이게 하이버네이트에서 제공하는 건줄도 모르고 그냥 막 사용했는데, 이번에 영한님 강의에서 @CreatedDate를 알게되어 둘을 비교해보니

@CreationTimestamp 는 하이버네이트 제공

@CreatedDate 는 스프링 프레임워크 제공

인 것 같더라고요

@CreationTimestamp는 JPA의 표준이 아니라 하이버네이트에서 제공하는 거라 아무래도 나중에 그럴일은 없겠지만, JPA 구현체를 하이버네이트 말고 딴거로 바꾸면 못쓴다는 단점이 있을 것 같긴 한데,

@CreationTimestamp를 쓰면 @EnableJpaAuditing 같은거 안 해줘도 돼서 편하더라고요. 실무에서는 어떤 방식이 더 선호되나요? 

답변 1

11

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 진규님

이 부분은 기능상 크게 차이가 없고, 하이버네이트 구현체를 다른 것으로 변경할 일도 많지 않아서 원하는 것을 사용하시면 될 것 같아요.

그런데 최근에 하이버네이트 애노테이션 자체를 점점 사용하지 않는 추세여서, 저는 @CreatedDate를 더 선호합니다.

감사합니다.