如何从数据库中的DateTime型的数据,转化成java中对应的日期或时间数据类型后,得到这个数据的long值的后6位不是0。

时间:2022-07-05 14:48:32
我的本意是,在数据库中有DateTime型的数据,把它读出来后用Date的getTime()方法得到一个long型的时间数据。以下是我使用的方法:
1.用是的RecordSet的getDate()方法,可用过以后一看,得到的光是日期,没有时间。于是改用RecordSet的getTimestamp()方法,得到Timestamp对象后,用Timestamp对象的getTime()方法得到的long型数据后6位是0,这表明时间数据还是没有得到。于我是改用另一种方法。
2.用RecordSet的getDate()和getTime()方法分别得到时间和日期,然后用SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd kk:mm:ss");

formatter.parse( rs.getDate(6).toString() + " " + rs.getTime(6).toString() );
得到一个Date对象,然后用这个Date对象的getTime()方法得到的long型数据的后6位还是0。

这是怎么回事呢?

主要问题就是:如何从数据库中的DateTime型的数据,转化成java中对应的日期或时间数据类型后,得到这个数据的long值的后6位不是0。
谢谢大家了。

8 个解决方案

#1


直接用ResultSet的getTimestamp得到然后再用SimpleDateFormat来转

#2


SimpleDateFormat(pattern)

#3


SimpleDateFormat   sdf   =   new   SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
java.util.Date   date = sdf.parse(rs.getTimestamp(6).toString(),new   ParsePosition(0)); 

date.getTime()的值的后6位还是0,这个方法不行呀。

#4


java.util.Date date = new java.util.Date(rs.getTimestamp(6));

#5


new java.util.Date(rs.getTimestamp(6))
Date类没有这个构造函数。

#6


java.util.Date date = new java.util.Date(rs.getTimestamp(6).getTime()); 少了 getTime

#7


关注

#8


这样出来的Date对象,用getTime方法后还是没有时间值

#1


直接用ResultSet的getTimestamp得到然后再用SimpleDateFormat来转

#2


SimpleDateFormat(pattern)

#3


SimpleDateFormat   sdf   =   new   SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
java.util.Date   date = sdf.parse(rs.getTimestamp(6).toString(),new   ParsePosition(0)); 

date.getTime()的值的后6位还是0,这个方法不行呀。

#4


java.util.Date date = new java.util.Date(rs.getTimestamp(6));

#5


new java.util.Date(rs.getTimestamp(6))
Date类没有这个构造函数。

#6


java.util.Date date = new java.util.Date(rs.getTimestamp(6).getTime()); 少了 getTime

#7


关注

#8


这样出来的Date对象,用getTime方法后还是没有时间值