본문 바로가기
개발

[Spring] 실무에서 쓰이는 날짜 관련 함수

by 정보알려주는언니 2024. 3. 19.

실무에서 많이 쓰이는 Spring Java Date관련 함수를 정리해두었다. 

 

오늘부터 전 후일 계산

/** * 오늘 부터 전후 일 계산 * @param day * @param pattern * @return */ public static String getDateToStringFromToday(int day, String pattern){ SimpleDateFormat sdf = new SimpleDateFormat(pattern); Date today = new Date(); Calendar cal = Calendar.getInstance(); cal.setTime(today); cal.add(Calendar.DATE, day); return sdf.format(cal.getTime()); }

 

 

해당 일자의 첫 시간

/** * 해당 날짜의 첫 시간 00:00:00 000 으로 변환 * @param date * @return */ public static Date getStartOfDay(Date date) { if(date == null) { return null; } return new DateTime(date).withTimeAtStartOfDay().toDate(); }

 

 

해당 일자의 마지막 시간

/** * 해당 날짜의 마지막 시간 23:59:59 999 으로 변환 * @param date * @return */ public static Date getEndOfDay(Date date) { if(date == null) { return null; } return new DateTime(date).millisOfDay().withMaximumValue().toDate(); }

 

해당 월의 첫째 날

/** * 해당 날짜의 첫째날 00:00:00 000 으로 변환 * @param date * @return */ public static Date getFirstDateOfMonth(Date date) { if(date == null) { return null; } return new DateTime(date).withDayOfMonth(1).withTimeAtStartOfDay().toDate(); }

 

해당 월의 마지막날

/** * 해당 날짜의 마지막날 23:59:59 999 으로 변환 * @param date * @return */ public static Date getLastDateOfMonth(Date date) { if(date == null) { return null; } return new DateTime(date).dayOfMonth().withMaximumValue().millisOfDay().withMaximumValue().toDate(); }

 

기간계산

/** * 날짜 계산 * @param dateStr * @param pattern * @return * @throws ParseException */ public static long doDiffOfDate(String dateStr, String pattern) throws ParseException{ SimpleDateFormat sdf = new SimpleDateFormat(pattern); Date date = sdf.parse(dateStr); return DateUtils.doDiffOfDate(date); }

 


댓글