반응형
2023.01.11 상품권 등록 시 유효성 체크 서비스를 개발하던 중, 시간 관련 함수를 사용해야 하는데 문법이 정확히 기억이 나지 않았다. 역시 구글링을 통해 빠르게 해결하였고, 공부한 부분을 잊지 않기 위해 정리해보려 한다.
1. Date, Calendar
- Date, Calendar 객체 생성
// Date 객체 생성
Date date = new Date();
// 사용불가, Calendar 는 추상 클래스로 new를 이용한 객체 생성이 불가
Calendar cal = new Calendar();
// Calendar class를 구현한 class의 객체를 반환
Calendar cal = Calendar.getInstance();
- Date <-> Calendar 전환
// Date를 Calendar로 전환
cal.setTime(new Date());
// Calendar를 Date로 전환
long caltime = cal.getTimeInMillis();
date = new Date(caltime);
- Calendar 년, 월, 일, 시간, 분, 초 더하고 빼기
cal.add(Calendar.YEAR, 1) // 1년 더하기
cal.add(Calendar.MONTH, -1) // 1달 빼기
cal.add(Calendar.DAY, 3) // 3일 더하기
cal.add(Calendar.HOUR_OF_DAY, 4) // 4시간 더하기
cal.add(Calendar.MINUTE, 20) // 20분 더하기
cal.add(Calendar.SECOND, -30) // 30초 빼기
- Date 날짜 비교
Date date2 = new Date();
// comareTo의 값이 1이면 date > date2, 0이면 date = date2, -1이면 date < date2
date.compareTo(date2);
// 이전 날짜인지 비교
date.before(date2);
// 이후 날짜인지 비교
date.after(date2)
- 문자열 타입을 Date 타입으로 전환
// 날짜 데이터 포맷을 지정하는 객체, yyyyMMddHHmmSS 형태로 지정, 각 년`월`일`시간`분`초 의미
SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMddHHmmSS");
String strDate = "20230111191035";
// String -> Date
Date date = formatter.parse(strDate);
반응형
'IT 개발' 카테고리의 다른 글
[금융IT] 금융시스템 책임자 승인 프로세스 정리 및 오류해결. (1) | 2024.01.11 |
---|---|
[Spring] 트랜잭션 AOP 기능 정리 (0) | 2023.01.07 |
[Spring] logback, 로그백 (0) | 2022.07.29 |
[Web] API 란? (0) | 2021.12.26 |
[WEB] 웹(Web) 이란? (0) | 2021.12.21 |