如何理解Ehcache元素中的“CreationTime”和其他时间?

3
Ehcache Api for Element中,javadoc没有提供有关各种时间表示方式的信息。它们只是一个长整型。
可以安全地假设这是毫秒级别的时间戳吗?我正在使用JodaTime库处理时间,如果我用这种方式创建DateTime对象,它会准确吗?
DateTime time = new DateTime(element.getCreationTime());
1个回答

1
是的,element.getCreationTime()返回的“long”(以及类Element的其他time()方法)是自“纪元”以来经过指定毫秒数的标准基本时间。因此,“new java.util.Date(element.getCreationTime())”或“new org.joda.time.DateTime(element.getCreationTime())”将起同样的作用。你应该很容易地进行测试...例如,我会测试并确保在使用java.util.Date和org.joda.time.DateTime时,element.getCreationTime()显示相同,并将它们都打印到屏幕上。希望这有所帮助。

2
感谢您的回复,但我认为您的测试机制不准确。即使长整型表示其他内容,java.util.Date和org.joda.time.DateTime都会有相同(无效)的结果。将它们彼此比较并不能证明任何事情。话虽如此,我无法想象长整型还可能代表什么。我希望Javadocs能更好一些。 - StrixVaria
关于比较的好点是...那并不能证明准确的时间。下次我会更具体。但答案仍然有效。同样简单的测试(这正是我在写答案时所想到的)是将某些内容添加到缓存中,然后立即从缓存中获取并打印新的org.joda.time.DateTime(element.getCreationTime())...以验证它是否是正确的时间(因为你刚刚添加了它)。关于javadocs,可能会更好...请随意在http://jira.terracotta.org/jira/browse/EHC(文档组件)上创建一个JIRA。 - lanimall

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接