legacy/Spring

[Spring, JAVA] LocalDateTime <-> Timestamp 변환

heemang.dev 2023. 7. 14. 19:54

 

회원가입 할 때 회원 정보에 계정 생성 날짜를 넣기 위해 DB에는 Timestamp를 서버에는 LocalDateTime 형식을 사용하였다.

 

Timestamp -> LocalDateTime

Timestamp 클래스에 아래 메서드가 정의되어 있다.

public LocalDateTime toLocalDateTime() {
    return LocalDateTime.of(getYear() + 1900,
                            getMonth() + 1,
                            getDate(),
                            getHours(),
                            getMinutes(),
                            getSeconds(),
                            getNanos());
}

 

LocalDateTime -> Timestamp

Timestamp 클래스에 아래 메서드가 정의되어 있다.

public static Timestamp valueOf(LocalDateTime dateTime) {
    return new Timestamp(dateTime.getYear() - 1900,
                         dateTime.getMonthValue() - 1,
                         dateTime.getDayOfMonth(),
                         dateTime.getHour(),
                         dateTime.getMinute(),
                         dateTime.getSecond(),
                         dateTime.getNano());
}

 

적용

H2 DB

Spring

 

회원가입 시점에 db에 사용자 정보 저장

LocalDateTime -> Timestamp

db에 저장된 사용자 정보 가져오기

Timestamp -> LocalDateTime