java.util.date是java.sql.date的父类
可以互相转换
java.sql.date date_sql = new java.sql.date(System.currentTime());
java.util.date date = new java,util.date(date_sql.getTime());
java.sql.date的时间格式是年-月-日,没有时间部分。
System.out.println(new Date(System.currentTimeMillis()));
System.out.println(new java.util.Date());
//2022-09-17
//Sat Sep 17 15:18:13 CST 2022
强制从datesql获取时分秒,会抛异常。
但是不代表没有时间部分的精度。
datesql.getTime() == date.getTime() //true
两个对象都能进行格式化,使用类SimpleDateFormat
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date sql_date = new Date(System.currentTimeMillis());
System.out.println(format.format(sql_date));
java.util.Date util_date = new java.util.Date();
System.out.println(format.format(util_date));
//2022-09-17 15:23:42
//2022-09-17 15:23:42 通过format转换后可以显示时分秒
注:java.sql.date 通过格式化后可以显示时分秒,也就是他时分秒的精度并没有丢失
java.sql.Date为 java.util.Date的一个子类,继承了java.util.Date中的方法,只不过两者的tostring()不同, java.sql.Date对其进行了重写。
java.util.Date把此 Date 对象转换为以下形式的 String: dow mon dd hh:mm:ss zzz yyyy 输出
java.sql.Date 则格式化日期转义形式 yyyy-mm-dd 输出。