前几天做东西用到mysql数据库,要往数据库中插入日期时间类型,一直很模糊,结果把datetime类型的存成date类型的,把日期中的时间直接略去了,搞的甚是尴尬。
现在终于搞明白其中类别的区别,记下来分享一下。
mysql数据库中日期时间类型有date、datetime和time三种:
date保存日期,但是会略去时间,jdbc取的时候用getDate()方法;
time保存时间,相应的会略去日期,jdbc取的时候用getTime()方法;
datetime保存日期和时间都会保存,jdbc取的时候用getTimestamp()方法。
java.util.Date、java.sql.Date、java.sql.Time、java.sql.Timestamp都有一个传long值的构造函数(是离1970年1月1日0时0分0秒的毫秒值),同时都有一个getTime()方法,也是根据对象日期时间获取这个long型毫秒值,因此可以相互转化。