Java将 java.util.Date 转换为 java.sql.Date

例子

java.util.Datejava.sql.Date当需要将 Date 对象写入数据库时,转换通常是必需的。

java.sql.Date是毫秒值的包装器,用于JDBC标识SQL DATE类型

在下面的示例中,我们使用构造函数,它创建一个 Date 对象并将其初始化以表示最接近毫秒的时间。该日期用于返回对象的方法中java.util.Date()convert(java.util.Date utilDate)java.sql.Date

例子

public class UtilToSqlConversion {
    
    public static void main(String args[])
    {
        java.util.Date utilDate = new java.util.Date();
        System.out.println("java.util.Date is : " + utilDate);
        java.sql.Date sqlDate = convert(utilDate);
        System.out.println("java.sql.Date is : " + sqlDate);
        DateFormat df = new SimpleDateFormat("dd/MM/YYYY - hh:mm:ss");
        System.out.println("dateFormated 日期是: " + df.format(utilDate));
    }

    private static java.sql.Date convert(java.util.Date uDate) {
        java.sql.Date sDate = new java.sql.Date(uDate.getTime());
        return sDate;
    }

}

输出

java.util.Date is : Fri Jul 22 14:40:35 IST 2016
java.sql.Date is : 2016-07-22
dateFormated 日期是: 22/07/2016 - 02:40:35

java.util.Date有日期和时间信息,而java.sql.Date只有日期信息