http://docs.oracle.com/javase/6/docs/api/java/sql/Timestamp.html
唯一不贬低的ctor需要毫秒。有没有办法要求现在'包括nanos。
答案 0 :(得分:4)
getNanos()/setNanos(int)
用于支持以纳秒精度返回时间戳数据类型的数据库。
Java无法以纳秒精度获取当前时间。 System.nanoTime()
返回JVM选择的某个未知历元经过的纳秒数。它可用于测量两次System.nanoTime()
调用之间的经过时间。即便如此,虽然System.nanoTime()
可以测量调用纳秒精度之间的经过时间,但它并不一定准确到纳秒精度,如javadocs中所述。
答案 1 :(得分:3)
正如其他答案的评论中所指出的那样,System.nanoTime()
并没有真正返回任何有关时间的有意义的值,以纳秒为单位。
我想指出this discussion from SO指出为什么我们无法在时间测量上获得更好的准确性。它似乎意味着你不可能按照你的要求去做,并且由于可移植性和平台限制,尝试包含这种能力会违反一些Java设计目标。
所以,在回答你的问题时,我会说不,但只是基于比我更多的人的答案。