JDBC操作數據庫Date類型數據
- 由於
java原生的工具類java.util提供的Date對象與JDBC提供的Date對象並不相同- 分別是
java.util.Date和java.sql.Datejava.sql.Date是java.util.Date的子類- 所以在進行增刪改查部分操作中,不能直接將原生工具類的
Date對象直接運用到JDBC中可以將
java.sql.Date直接轉換成java.util.Date
使用SimpleDateFormat轉換
SimpleDateFormat可以將字符串轉換成Util.Date//字符串:自定義日期 String str = "1999-09-09"; //將字符串轉換為Util.Date SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); //parse方法轉換 java.util.Date date = simpleDateFormat.parse(str); System.out.println(date);也可以將
Util.Date轉換成字符串//將Date對象轉換成字符串 String dates = simpleDateFormat.format(new java.util.Date()); System.out.println(dates); //2020-09-14
將字符串類型的固定日期轉換成sql.Date
sql.Date不支持字符串轉換,只支持毫秒值創建- 通過
util.Date拿到固定日期的毫秒值,再轉換成sql.date
//字符串:固定日期
String str = "1999-09-09";
//將字符串轉換為Util.Date
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
//parse方法轉換
java.util.Date date = simpleDateFormat.parse(str);
System.out.println(date);
//通過util.Date拿到指定日期的毫秒值,再轉換成sql.Date
java.sql.Date sqlDate = new java.sql.Date(date.getTime());
System.out.println(sqlDate);
將日期轉換封裝成工具類
package com.qf.Person;
import java.text.ParseException;
import java.text.SimpleDateFormat;
public class DateUtils {
//1. 字符串轉換成util.Date
public static java.util.Date strToUtil(String str) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
try {
java.util.Date date = simpleDateFormat.parse(str);
return date;
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}
//2. util.Date 轉換成sql.Date
public static java.sql.Date utilToSql(java.util.Date date) {
return new java.sql.Date(date.getTime());
}
//3. util.Date轉換成字符串形式
public static String utilToStr(java.util.Date date) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
return simpleDateFormat.format(date);
}
}
