网络知识 娱乐 java.util.Date与java.sql.Date

java.util.Date与java.sql.Date

Java用了十几年了,还以为java的2个日期类java.util.Date和java.sql.Date是不相关的类,今天打开代码一看,才发现原来sql.date继承了util.date。2个类区别倒不大:

java.util.Date : 通常情况下用它获取当前时间或构造时间

java.sql.Date : 是针对SQL语句使用的,它只包含日期而没有时间部分

共同点:

都有getTime方法返回毫秒数

不同点:

1、java.sql.Date是针对SQL语句使用的,它只包含日期而没有时间部分,一般在读写数据库的时候用,PreparedStament的setDate()的参数和ResultSet的getDate()方法的都是java.sql.Date

2、java.util.Date是在非SQL语句的情况下使用

————————————————

相互转化:

1.

java.sql.Date转为java.util.Date

java.sql.Date date=new java.sql.Date();

java.util.Date d=new java.util.Date (date.getTime());


2.

java.util.Date转为java.sql.Date

java.util.Date utilDate=new java.util.Date();

java.sql.Date sqlDate=new java.sql.Date(utilDate.getTime());

java.sql.Time sTime=new java.sql.Time(utilDate.getTime());

java.sql.Timestamp stp=new java.sql.Timestamp(utilDate.getTime());


————————————————