Java 时间戳 : Joda vs Date vs Long

标签 java date jodatime

我需要以毫秒级精度记录我的交易系统的时间戳(订单发送时间、确认时间、完成时间)。

试图思考表示此信息的最佳方式是什么...我需要记录以分析不同时间戳之间的性能/延迟...

使用 Joda instant 有什么意义吗?不确定这比仅存储 UTC 日期时间的 Java 日期有什么优势。

不确定我是否需要使用 Date,因为我不明白为什么我现在需要这个...但是,它更明确一点而不是使用长...

关于如何最好地解决这个问题有什么想法吗?我想如果我做出错误的决定,以后需要很长时间才能重构它。

最佳答案

通常,时间处理任务最终比表面上看起来更难。如果您正在对时间值进行任何类型的非平凡操作——除了按照您在问题中建议的那样考虑它们的差异——您应该认真考虑 Joda。 Joda 是一个非常全面的库。

因此,也许首先从 long 值开始,如果您意识到以后需要重新发明轮子,则重构为 Joda。

(您还想考虑向系统添加库的其他副作用——无论是增加内存使用还是减少周期。您提到您正在构建一个交易系统,我认为它往往是高性能的具有非常特殊要求的系统。)

关于Java 时间戳 : Joda vs Date vs Long,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8695825/

相关文章:

java - 如何将日期格式的 JSpinner 值存储到 JodaTime 变量中?

java - 格式化 UTC 日期时间的部分秒

java - 在finally block 中断zip中的ByteStream复制后关闭GZIPOutputStream

java - ListView 项目选择的背景改变了,它也改变了其他项目

jquery - 如何将 Django 日期格式更改为 dd/mm/yy?

Java jsoup 日期解析异常

php - Laravel 按自定义日期字段分组

scala - 如何通过嵌套查询从 Slick 中的日期时间表中选择最新记录

Java:读取带有分隔符的文件时出错

java - 如何使用 XQuery 从 Java 使用 Saxon 输出 json