1. getTime() 메서드
java.util.Date 객체의 getTime 메서드는 1970년 1월 1일 00시 00분 00초 UTC를 기준으로 경과 한 밀리초를 반환한다. 이 밀리초를 java.sql.Date의 생성자에 전달하게 되면 우리가 원하는 java.sql.Date 객체를 생성할 수 있다. 즉, 방법은 아래와 같다.
public static void main(String[] args) {
java.util.Date utilDate = new java.util.Date();
long milliSeconds = utilDate.getTime();
java.sql.Date sqlDate = new java.sql.Date(milliSeconds);
System.out.println("java.util.Date: "+utilDate); // 결과: Tue Jan 31 03:54:37 KST 2023
System.out.println("java.sql.Date: "+sqlDate); // 결과: 2023-01-31
}
2. SimpleDateFormat 활용
SimpleDateFormat을 활용하면 java.util.Date를 통해 원하는 형태의 문자열을 만들 수 있다. 즉, 우리는 java.sql.Date의 형태에 맞는 문자열을 만들어 java.sql.Date 클래스의 정적 메서드인 valueOf 메서드를 사용하여 java.sql.Date 객체를 생성할 수 있다. 즉, valueOf 메서드는 전달받은 문자열을 통해 Date 타입으로 변환해주는 기능을 수행한다. 예시코드는 아래와 같다.
public static void main(String[] args) {
java.util.Date utilDate = new java.util.Date();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
String formattedDate = simpleDateFormat.format(utilDate);
java.sql.Date sqlDate = java.sql.Date.valueOf(formattedDate);
System.out.println("java.util.Date: "+utilDate); // 결과: Tue Jan 31 04:02:14 KST 2023
System.out.println("java.sql.Date: "+sqlDate); // 결과: 2023-01-31
}
'Java' 카테고리의 다른 글
[Java] 추상 클래스 (0) | 2023.02.01 |
---|---|
[Java] Getter/Setter의 사용 이유 (0) | 2023.01.30 |
[Java] Final, Static final (0) | 2023.01.30 |
[Java] Singleton (0) | 2023.01.30 |
[Java] Static (0) | 2023.01.30 |