⚡ 개요
java 에서 날짜를 특정 타입으로 변환을 할 때가 존재한다. 자주 사용을 하는 변환 함수에 대해서는 함수를 쓰면서 바로 사용을 하는 경우도 있지만 자주 사용하지 않는다면 내부 소스를 찾아보거나 검색을 하게 된다.
(최근에 날짜 변환에 대해서 기억이 잘 나지 않아서 검색을 좀 자주 하게 되었는데 정리를 좀 해놔야겠다고 생각을 했다.)
자바에서 사용하는 함수에 대해서 정리를 하겠지만 함수를 까보면 어느 정도 다른 언어에서도 충분히 비슷한 함수가 존재하거나 없으면 만들어서 사용 가능할 거라고 생각을 한다.
⚡ 날짜 변환 사용 방법
간단하게 내가 사용하는 방법에 대해서만 정리를 하려고 한다.
참고로 LocalDateTime , LocalDate, LocalTime 은 내부적으로 변환에 대해서 지원하는 함수가 많으니 자주 사용 하는 것은 한번 확인 해보는게 좋다.
📝 Date to LocalDate
public static LocalDate ToLocalDate(java.sql.Date date) {
return date == null ? null : date.toLocalDate();
}
📝 Time to LocalTime
public static LocalTime ToLocalTime(java.sql.Time time) {
return time == null ? null : time.toLocalTime();
}
📝 TimeStamp to String
public static String convertTimeStampToString(Timestamp timestamp, String format)
{
if (timestamp == null) return "";
try
{
Date date = new Date();
date.setTime(timestamp.getTime());
return new SimpleDateFormat(format).format(date);
}
catch (Exception e)
{
return "";
}
}
ex) convertTimeStampToString(new Timestamp(System.currentTimeMillis()), "yyyy-MM-dd HH:mm")
📝 LocalDateTime to String
public static String convertLocalDateTimeToString(LocalDateTime localDateTime, String format)
{
if (localDateTime == null) return "";
try
{
return localDateTime.format(DateTimeFormatter.ofPattern(format));
}
catch (Exception e)
{
return "";
}
}
ex) convertLocalDateTimeToString(new LocalDateTime(), "yyyy-MM-dd HH:mm")
📝 LocalTime to String
public static String convertLocalTimeToString(LocalTime localTime, String format)
{
if (localTime == null) return "";
try
{
return localTime.format(DateTimeFormatter.ofPattern(format));
}
catch (Exception e)
{
return "";
}
}
ex) convertLocalTimeToString(new LocalTime(), "HH:mm");
📝 String to LocalDateTime
public static LocalDateTime convertStringToLocalDateTime(String dateTime, String format)
{
if (dateTime == null) return null;
try
{
return LocalDateTime.parse(dateTime, DateTimeFormatter.ofPattern(format));
}
catch (Exception e)
{
return null;
}
}
📝 String to Timestamp
public static Timestamp convertStringToTimestamp(String dateTime, String format)
{
if (dateTime == null) return null;
try
{
Date date = new SimpleDateFormat(format).parse(dateTime);
return new Timestamp(date.getTime());
}
catch (Exception e)
{
return null;
}
}
📝 String to LocalDate
public static LocalDate convertStringToLocalDate(String dateTime, String format)
{
if (dateTime == null) return null;
try
{
return LocalDate.parse(dateTime, DateTimeFormatter.ofPattern(format));
}
catch (Exception e)
{
return null;
}
}
🛑 위의 변환 방식의 경우 일반적으로 많이 사용하는 방식이라고 생각을 하고 있고, 공통 코드로 많이 빼서 사용 할 것이다.
내용을 잘 확인 해보고 상황에 맞게 공통으로 사용하면 좋을거 같다.
반응형
'Java' 카테고리의 다른 글
[JPA] QueryDsl에서 동적 쿼리 및 배치 쿼리 사용 방법 (0) | 2024.03.30 |
---|---|
[JPA] CascadeType 사용시 주의 사항 (0) | 2024.02.24 |
[JAVA] Connection leck 관련 Apparent connection leak detected 경고 관련 내용 (0) | 2023.12.29 |
[Pythod] 파이썬 개발 도전 (2) (0) | 2023.12.10 |
[JAVA] java 21 LTS 릴리즈 내용 정리 (0) | 2023.09.20 |