java.util.Date和java.sql.Date的区别

继承关系

java.lang.Object 

 ---- java.util.Date 

       ----java.sql.Date


java.sql.Date

java.sql.Time

java.sql.Timestamp

这三个都是java.util.Date的子类

java.util.Date 时间格式: 年-月-日 时:分:秒.毫秒

java.sql.Date 时间格式:年-月-日 

java.sql.Time 时间格式: 时:分:秒

java.sql.Timestamp 时间格式: 年-月-日 时:分:秒 


java.sql.Date是java.util.Date的子类,与数据库Date相对应的一个类型,而java.util.Date是纯java的Date。

java.sql.Date是规范化之后的时间,其时分秒部分被截取掉了。

java.sql.Date是为了配合SQL DATE而设置的数据类型。“规范化”的java.sql.Date只包含年月日信息,时分秒毫秒都会清零。格式类似:YYYY-MM-DD。

在数据库中插入带时分秒的时间需要使用java.sql.Timestamp

String str = "2014-03-02 08:12:12";

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");

java.util.Date date= sdf.parse(s);

java.sql.Timestamp st = new java.sql.Timestamp(date.getTime());

//设置数据库值

pstmt.setTimestamp(1, new java.sql.Timestamp(Calendar.getInstance().getTime().getTime())); //当前时间


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

在读写数据库的时候使用,PreparedStament的setDate()的第2参数和ResultSet的getDate()方法的第2个参数都是java.sql.Date。


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


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值