====== Java Date / Calender ======
* Java 7 이전의 [[http://docs.oracle.com/javase/7/docs/api/java/util/Date.html|Date]], [[http://docs.oracle.com/javase/7/docs/api/java/util/Calendar.html|Calendar]] 클래스
* [[http://www.threeten.org/|ThreeTen(JSR-310) Java 8 Date Time backport to Java 7]]
* [[http://www.threeten.org/threeten-extra/|ThreeTen Extra]] : Java 8 DateTime의 부족한 점을 보완한 라이브러리
===== Date의 필드 수정 =====
* Date 객체의 필드 수정은 Calendar를 통해서 할 것.
// 오늘 날짜의 최대 시간(오늘의 마지막 시간) 구하기
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
calendar.set(Calendar.HOUR_OF_DAY, calendar.getMaximum(Calendar.HOUR_OF_DAY));
calendar.set(Calendar.MINUTE, calendar.getMaximum(Calendar.MINUTE));
calendar.set(Calendar.SECOND, calendar.getMaximum(Calendar.SECOND));
calendar.set(Calendar.MILLISECOND, calendar.getMaximum(Calendar.MILLISECOND));
return calendar.getTime();
===== 두 Date 객체간의 날짜 차이 =====
[[https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/TimeUnit.html|TimeUnit]]을 통해 두 ''Date'' 객체간의 차이를 구할 수 있다.
Date date1 = ...;
Date date2 = ...;
// getTime()은 시간을 milliseconds로 리턴한다.
long diffMillis = date1.getTime() - date2.getTime();
TimeUnit.DAYS.convert(diffMillis, TimeUnit.MILLISECONDS);
===== 참고 =====
* [[https://dzone.com/articles/getting-current-date-time-in-java|Getting Current Date Time in Java]]