본문 바로가기

Language/Java / JSP

[Java] LocalDateTime, Timestamp 변환 (LocalDateTime To Timestamp)

반응형

자바1.8부터 지원하는 LocalDateTime형식을 Timestamp 형식으로 변환하는 방법과, 반대로 변환하는 방법에 대해 알아보자.

날짜/시간등을 나타내는 LocalDateTime을 Timestamp로 변환하는 이유로는 주로 아래와 같은 이유가 아닐까 싶다.

1. 날짜/시간 정보를 서로 비교하여 크고 작음을 확인.
2. 데이터셋 제공시 데이터안의 날짜시간으로 되어 있는 특정 정보를 Timestamp로 지정하여 TimeZone에 따른 혼란을 방지.

 

// LocalDateTime 현재 날짜 가져오기
LocalDateTime currentLocalDateTime = LocalDateTime.now();


// LocalDateTime to Timestamp
long currentTimeMills = Timestamp.valueOf(currentLocalDateTime).getTime();


// Timestamp to LocalDateTime
long systemTimeMills = System.currentTimeMillis();
LocalDateTime systemLocalDateTime = LocalDateTime.ofInstant(Instant.ofEpochMilli(systemTimeMills), TimeZone.getDefault().toZoneId());


// String Date to LocalDateTime
String strDate = "2020-10-26 14:28:00";
LocalDateTime localDateTime = LocalDateTime.parse(strDate, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));