사용자 도구

사이트 도구


java:jpa:datetime

JPA Date Time

Joda Time

    • MySQL에 millisecond 단위가 없는데, 데이터를 넣을 때 ms를 넣으면 무조건 올림이 돼버리는 현상 발생.
    • Date 필드의 길이를 6으로 지정해서 애초에 잘라버리면 될 듯(columnDefinition = “datetime(6)”).
  • Jodatime 설정 2. JPA Configuration
    <property name="jadira.usertype.autoRegisterUserTypes" value="true" /> 1
    <property name="jadira.usertype.databaseZone" value="jvm" />

생성/수정 시간 (creation datetime, update datetime)

Hibernate 의 CreationTimestamp, UpdateTimestamp

@Column
@CreationTimestamp
private LocalDateTime createDateTime;
 
@Column
@UpdateTimestamp
private LocalDateTime updateDateTime;

DB DEFAULT 사용시

  • MySQL에서 DEFAULT 값 사용시
@Generated(GenerationTime.INSERT) 
@Column
private LocalDateTime createDateTime;
 
@Generated(GenerationTime.ALWAYS)  
@Column
private LocalDateTime updateDateTime;
created_at      DATETIME(6)  NOT NULL DEFAULT CURRENT_TIMESTAMP(6),
modified_at     DATETIME(6)  NOT NULL DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6),

Java 8 DateTime

Java 8 Year Month

참조

java/jpa/datetime.txt · 마지막으로 수정됨: 2021/10/07 21:59 저자 kwon37xi