Programing/JPA
JPA Date or Timestamp 저장 시 유용한 어노테이션
리커니
2023. 5. 16. 09:16
반응형
JPA Date or Timestamp 저장 시 유용한 어노테이션에 대해 알아보겠습니다.
1. @Temporal
@Temporal 은 날짜, 시간 타입 매핑에 필수 어노테이션 입니다.
TemporalType.DATE, TemporalType.TIME, TemporalType.TIMESTAMP 3가지가 있으며 각각의 컬럼 타입에 따라 설정하시면 됩니다.
2. @CreationTimestamp
신규저장 시 자동으로 현재 시간을 넣어주는 어노테이션 입니다.
@Embeddable @EmbededId의 경우 정상동작 하지 않음에 주의 해야 합니다.
엔티티 클래스 필드에만 적용합니다.
3. @UpdateTimestamp
@CreationTimestamp와 비슷하게 수정 시 현재 시간을 자동으로 업데이트 해주는데 사용합니다.
마찮가지로 엔티티 클래스 필드에만 적용합니다.
4. 예시
@Entity
@Table(name = "USER", schema = "스키마")
public class USER {
@Column(name = "user_id")
@Id
private String userId;
@Column(name = "user_nm")
private String userNm;
@Column(name = "crt_dt")
@Temporal(TemporalType.TIMESTAMP)
@CreationTimestamp
private Date crtDt;
@Column(name = "udt_dt")
@Temporal(TemporalType.TIMESTAMP)
@UpdateTimestamp
private Date udtDt;
}
반응형