日期:2014-05-20  浏览次数:20672 次

如何从数据库中的DateTime型的数据,转化成java中对应的日期或时间数据类型后,得到这个数据的long值的后6位不是0。
我的本意是,在数据库中有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。
谢谢大家了。

------解决方案--------------------
直接用ResultSet的getTimestamp得到然后再用SimpleDateFormat来转
------解决方案--------------------
SimpleDateFormat(pattern)
------解决方案--------------------
java.util.Date date = new java.util.Date(rs.getTimestamp(6));
------解决方案--------------------
关注