当前位置: 代码迷 >> SQL >> java.sql.Date与java.util.Date的有关问题
  详细解决方案

java.sql.Date与java.util.Date的有关问题

热度:9   发布时间:2016-05-05 13:07:18.0
java.sql.Date与java.util.Date的问题

PreparedStatement中,时间类型的参数必须是java.sql.Date!!
java.sql.Date中只有年月日,要想入库是长日期格式应该用java.sql.Datestamp

于是查了下资料,util.Date & sql.Data区别
java.util.Date是java.sql.Date的父类
前者是常用的表示时间的类,我们通常格式化或者得到当前时间都是用他
后者之后在读写数据库的时候用他,因为PreparedStament的setDate()的第2参数和ResultSet的getDate()方法的第2个参数都是java.sql.Date

继承关系:java.lang.Object?->?java.util.Date?->?java.sql.Date
具体的转换关系就是java.util.Date?d=new?java.util.Date?(new?Java.sql.Date());?

java.util.Date 是在除了SQL语句的情况下面使用
java.sql.Date?是针对SQL语句使用的,它只包含日期而没有时间部分

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());


  相关解决方案