DateTimeFormatter 을 사용해야 하는 이유? ( by ChatGPT)
- DateTimeFormatter: 자바 8 이상에서 도입된 java.time 패키지는 국제 표준 ISO-8601을 기본으로 하여 설계되었습니다. 따라서 DateTimeFormatter를 사용하면 국제 표준에 더 잘 부합하는 코드를 작성할 수 있습니다.
- SimpleDateFormat: 자바 초기 버전에서 도입된 만큼 현대적 표준을 따르지 않는 부분이 있습니다.
특히 SimpleDateFormat 은 스레드에 안전하지 않는다고 한다.
그래서, DateTimeFormatter 을 이용한 날짜, 시간 더하기
package study.d4emon.test;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.time.temporal.TemporalAdjusters;
public class DateAddLocaleDate {
public static void main(String[] args) {
// LocalDate
LocalDate localeToday = LocalDate.now();
// Firtday of Month
LocalDate firstDayOfMonth = localeToday.with(TemporalAdjusters.firstDayOfMonth());
// DateTimeFormmater
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
// today
String today = localeToday.format(formatter);
System.out.println("Today : " + today);
// firstDay
String firstDay = firstDayOfMonth.format(formatter);
System.out.println("FirstDay : " + firstDay);
// 하루 더하기
String addDate = localeToday.plusDays(+1).format(formatter);
System.out.println("Add 1 Day : " + addDate);
// 한달 더하기
addDate = localeToday.plusMonths(+1).format(formatter);
System.out.println("Add 1 Month : " + addDate);
// 1년 더하기
addDate = localeToday.plusYears(+1).format(formatter);
System.out.println("Add 1 year : " + addDate);
// 시분초 까지 표시하려면
System.out.println("시분초 까지 표시하려면 ....");
formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime now = LocalDateTime.now();
System.out.println("DateTime: " + now.format(formatter));
// 15초 더하기
LocalDateTime nextSecond = now.plusSeconds(15);
System.out.println("Add 15 Sec: " + nextSecond.format(formatter));
// 30분 더하기
LocalDateTime nextMinute = now.plusMinutes(30);
System.out.println("Add 30 Min: " + nextMinute.format(formatter));
// 1시간 더하기
LocalDateTime nextHour = now.plusHours(1);
System.out.println("Add 1 Hour : " + nextHour.format(formatter));
}
}
끝
'Java&Jsp&Servlet' 카테고리의 다른 글
[Tomcat] Tomcat 지원 Java 버전 (0) | 2019.04.19 |
---|---|
[Eclipse] Previous operation has not finished; run 'cleanup' if it was interrupted (0) | 2016.03.02 |
[eclipse] a resource exists with a different case (0) | 2015.09.01 |
[JAVA] xml -> String 으로 변환 (0) | 2015.03.11 |
[JSP] request parameter 처리, JSP, JSTL (0) | 2015.03.06 |