Programming/Spring

[Spring Boot] JPA Entity 현재시간(current_timestamp) 적용 방법(@CreationTimestamp/ @UpdateTimestamp)

JeongKyun 2022. 6. 9.
반응형

서론


JPA를 사용할 때 현재시간 current_timestamp의 값을 넣고 싶을 때가있다. 이번 글에서 다루는 어노테이션만 잘 알아두면 아주 손쉽게 해당 기능을 적용시킬 수 있다.

 

Hibernate

Hibernate에서 엔터티 객체에 대해 Insert와 Update 쿼리가 발생할 때 자동으로 현재 서버 시간을 기입시켜주는 어노테이션을 제공해준다.

 

Spring Framework

스프링 프레임워크에서도 하이버네이트와 같은 기능을 제공을 해주는데 이번 포스팅에서는 하이버네이트에서 지원해주는 두 가지 키워드에 대해서만 알아보려한다.

 

스프링 프레임워크에서 지원해주는 것은 검색어에 CreatedDate를 입력하면 좋은 자료들이 많이 나오니 참고하기 바란다.

 


 

@CreationTimestamp


해당 어노테이션은 Insert 쿼리가 발생할 때 현재 시간 값을 적용시켜준다.

 

사용 방법

	@CreationTimestamp
	@Column(name = "ins_date")
	private LocalDateTime insDate;

위와 같이 어노테이션 하나만 추가해주면 끝이다. 간단하다 참

 


 

@UpdateTimestamp


해당 어노테이션은 Update 쿼리가 발생했을 때 현재 시간 값을 적용시켜준다. 이 어노테이션을 사용하면, 마지막 수정시간을 업데이트 시켜주는 부분을 유연성있게 관리해줄 수 있다.

 

사용 방법

	@UpdateTimestamp
	@Column(name = "upd_date")
	private LocalDateTime updDate;

위와 @UpdateTimestamp만 지정해주면 끝이다. 

 

이렇게 JPA환경에서 INSERT /UPDATE를 할 때 현재시간을 기입하는 방법에 대해 알아봤다.

 

이 외에도 현재시간을 기입하는 방법은 정말 많은 방법들이 있기때문에 이 방법만이 답이 아니란 것을 말하고싶다.

댓글

💲 많이 본 글