java.util.Date与java.sql.Date的关系和转化

1.java.util.Date

常用的表示时间的类,我们通常格式化或者得到当前时间都是用他

2.java.sql.Date

在读写数据库的时候用他,因为PreparedStatement的setDate()的第2个参数和ResultSet的getDate()方法的第2个参数类型都是java.sql.Date

3.关系

1.都可以调用getTime()方法来获取毫秒数。
2.java.sql.Date类继承java.util.Date类,是java.util.Date类的子类。
3.java.sql.Date主要是用于sql中的!而java.util.Date用语一般的环境下都行!

4.转化

利用他们的关系可以实现两个类的相互转化:
使用getTime()来获取毫秒数,这是一个中间转化量:
java.sql.Date date=new Java.sql.Date();
java.util.Date d=new java.util.Date (date.getTime());
反过来是一样的。
注意:SimpleDateFormat使用的是java.util.Date来进行格式校验的。

eg:

在这里插入图片描述
这是我写的程序的一个例子,注意两个画蓝色实线的java代码:
1.Date date1=new Date(u.getBirthday().getTime());
分析:使用java.util.Date的一个对象(这里是u.getBirthday())来获取到时间毫秒数,用这个毫秒数来构建一个java.sql.Date对象date1 即实现转化。
2.ps.setDate(4, date1);
分析:第一个参数是 第几个?数,第二个参数是 java.sql.Date类的一个对象,使用1代码可以实现 把数据设置为SQL请求参数。

猜你喜欢

转载自blog.csdn.net/weixin_46591962/article/details/105011424