开发者社区> 问答> 正文

如何获取java.sql.Time表示的毫秒数?

我java.sql.Time (00:04:24)要从中获取毫秒数(或秒):

ResultSet rs = ...;
java.sql.Time time = rs.getTime("DURATION");
long millis = time.getTime();

但这样的结果是-3336000不是264000。

单击此处查看我的输出。

为什么没有输出264000?

问题来源:Stack Overflow

展开
收起
montos 2020-03-25 22:51:46 427 0
1 条回答
写回答
取消 提交回答
  • 如果您使用的是现代JDBC版本,则可以使用:

    LocalTime time = rs.getObject("DURATION", LocalTime.class);
    long millis = time.toSecondOfDay() * 1000 + time.get(MILLI_OF_SECOND);
    

    不幸的是,关于毫秒的计算,没有方法可以获取当天的毫秒,因为我使用了这种方法。

    @Andreas建议:

    long millis = time.toNanoOfDay() / 1000000
    

    回答来源:Stack Overflow

    2020-03-25 22:52:30
    赞同 展开评论 打赏
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载