Java 8부터 java.time api가 출시되었다.
따라서 당연하게, Java version 8이상만 사용 가능하다.
java.util.Date > java.util.Calendar > java.time(org.joda.time)
LocalDate
로컬 날짜 클래스로 날짜 정보만 출력된다.
LocalDate currentDate = LocalDate.now();
// result : 2019-11-13
LocalTime
로컬 시간 클래스로 시간 정보만 출력된다.
LocalTime currentTime = LocalTime.now();
// 16:57:33
LocalTime targetTime = LocalTime.of(12,33,35);
// 12:33:35
LocalDateTime
날짜와 시간 정보 모두 필요할 때 사용
// 현재 날짜와 시간 정보
LocalDateTime currentDateTime = LocalDateTime.now();
// 2024-04-13T17:30:30.388
LocalDateTime targetDateTime = LocalDateTime.of(2019, 11, 12, 12, 32, 22);
// 2019-11-12T12:32:22
LocalDateTime <-> String 타입 변환
// LocalDateTime -> String 타입 변환
LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
// String -> LocalDateTime 타입 변환
LocalDateTime.parse("2019-12-25T10:15:30");
LocalDateTime.parse("2019-12-25 12:30:00", DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));