💡 개요
오늘은 자바에서 사용되는 날짜를 나타내는 데이터 타입에 대해 정리해 보자.
📕 날짜 데이터 타입
🛠️ Epoch Time
Epoch Time는 long 타입을 사용해 1970-01-01 00:00:00 부터 경과할 밀리초를 표현한다.
long epochMillis = System.currentTimeMillis();
System.out.println(epochMillis);
[결과]
1741579085872
🛠️ Date
Date는 날짜와 시간을 나타내는 클래스이다.
하지만 사람이 쉽게 알아볼 수 있는 형태로 출력되지 않기 때문에 SimpleDateFormat 을 함께 사용해야 한다.
Date now = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println("Date : " + now);
System.out.println("Formatted Date : " + sdf.format(now));
[결과]
Date : Mon Mar 10 13:59:29 KST 2025
Formatted Date : 2025-03-10 13:59:29
🛠️ time.LocalDate
time 패키지의 LocalDate는 시간 정보 없이 날짜 정보만 저장할 때 사용되는 클래스이다.
now() 로 날짜정보를 가져올 수 있고, of() 로 특정 날짜를 설정할 수 있다.
LocalDate today = LocalDate.now();
LocalDate specificDate = LocalDate.of(2025, 3, 11);
System.out.println("오늘 날짜 : " + today);
System.out.println("설정한 날짜 : " + specificDate);
[결과]
오늘 날짜 : 2025-03-10
설정한 날짜 : 2025-03-11
🛠️ time.LocalTime
LocalTime은 날짜 정보 없이 시간 정보만 저장할 때 사용되는 클래스이다.
LocalTime도 LocalDate와 동일하게 특정 시각을 설정할 수 있다.
LocalTime now = LocalTime.now();
LocalTime specificTime = LocalTime.of(15, 0, 0);
System.out.println("현재 시간 : " + now);
System.out.println("설정한 시간 : " + specificTime);
[결과]
현재 시간 : 14:05:38.865761
설정한 시간 : 15:00
🛠️ time.LocalDateTime
LocalDateTime은 이름에서도 알 수 있듯이 LocalDate와 LocalTime을 합친 것이다.
LocalDateTime now = LocalDateTime.now();
LocalDateTime specificDateTime = LocalDateTime.of(2025, 3, 10, 15, 0, 0);
System.out.println("오늘 날짜 & 시간 : " + now);
System.out.println("설정한 날짜 & 시간 : " + specificDateTime);
[결과]
오늘 날짜 & 시간 : 2025-03-10T14:08:07.847581
설정한 날짜 & 시간 : 2025-03-10T15:00
🛠️ ZonedDateTime
특정 대륙이나 국가의 시간대(날짜 & 시간)를 나타내는 클래스이다.
ZonedDateTime seoulTime = ZonedDateTime.now(ZoneId.of("Asia/Seoul"));
ZonedDateTime newyorkTime = ZonedDateTime.now(ZoneId.of("America/New_York"));
System.out.println("서울 : " + seoulTime);
System.out.println("뉴욕 : " + newyorkTime);
[결과]
서울 : 2025-03-10T14:14:07.372081+09:00[Asia/Seoul]
뉴욕 : 2025-03-10T01:14:07.373202-04:00[America/New_York]
'개발 일기' 카테고리의 다른 글
[개발 일기] 2025.03.12 - filter에서 발생하는 예외 (0) | 2025.03.12 |
---|---|
[개발 일기] 2025.03.11 - compareTo() (0) | 2025.03.11 |
[개발 일기] 2025.03.09 - InnoDB (0) | 2025.03.09 |
[개발 일기] 2025.03.08 - MySQL과 웹 애플리케이션 (1) | 2025.03.08 |
[개발 일기] 2025.03.07 - Docker 볼륨 설정 (0) | 2025.03.07 |