1.java.util.Date
java常用的日期类型,可以通过字符串创建相应的时间对象
无法直接通过jdbc插入到数据库中!
sql接收的时间对象是 sql.Date。
2.java.sql.Date
不可以通过字符串创建事件对象,只能通过毫秒值创建对象(1970至今)
可以直接通过jdbc插入到数据库。
一.先根据当前的时间转换为sql.Date
1.现在的时间转为sql.Date; 由于sql.Date接受的是一个long的类型。(只有年-月-日);
//现在的事件转为sql.Date的时间
//获取到现在的时间 类型是java.Util.Date
Date date = new Date();
//把现在的时间改为long类型
long time = date.getTime();
//因为java.sql.Date接受的是一个long类型的直接往里面传参即可
java.sql.Date date1 = new java.sql.Date(time);
//现在输出的是 sql时间 可通过jdbc直接往数据库表中添加
System.out.println(date1);
在控制台输出为:
2.现在的时间转为sql.Time; 由于sql.Time接受的是一个long的类型。(只有时-分-秒);
//现在的事件转为sql.Date的时间
//获取到现在的时间 类型是java.Util.Date
Date date = new Date();
//把现在的时间改为long类型
long time = date.getTime();
//因为java.sql.Date接受的是一个long类型的直接往里面传参即可
java.sql.Time date1 = new java.sql.Time(time);
//现在输出的是 sql时间 可通过jdbc直接往数据库表中添加
System.out.println(date1);
在控制台输出为
3.现在的时间转为sql.Timestamp; 由于sql.Timestamp;接受的是一个long的类型。(只有年-月-日 时-分-秒-毫秒);
//现在的事件转为sql.Date的时间
//获取到现在的时间 类型是java.Util.Date
Date date = new Date();
//把现在的时间改为long类型
long time = date.getTime();
//因为java.sql.Date接受的是一个long类型的直接往里面传参即可
java.sql.Timestamp date1 = new java.sql.Timestamp(time);
//现在输出的是 sql时间 可通过jdbc直接往数据库表中添加
System.out.println(date1);
在控制台输出为
二.先根据字符串的时间转换为sql.Timestamp
但是字符串转换为sql.Date的话需要:SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String str="2022-11-12 16:31:32";
//使用 simpleDateFormat.parse()方法 将字符串转换为util.Date
Date parse = simpleDateFormat.parse(str);
//把现在的时间改为long类型
long time = parse.getTime();
//因为java.sql.Date接受的是一个long类型的直接往里面传参即可
java.sql.Timestamp date1 = new java.sql.Timestamp(time);
//现在输出的是 sql时间 可通过jdbc直接往数据库表中添加
System.out.println(date1);