如何获得24小时前代表的java.sql.Timestamp?我通过Scala使用JDK 8。
答案 0 :(得分:6)
如果你正在使用Java 1.8,它就像:
一样简单Instant instant = Instant.now().minus(24, ChronoUnit.HOURS);
Timestamp timestamp = Timestamp.from(instant);
您可以使用now()
接受Clock
的重载更加测试友好(因此您可以使用假时钟而不是系统时钟进行测试)。出于可读性考虑,您可能还需要静态导入ChronoUnit.HOURS
,即Instant.now().minus(24, HOURS)
。
请注意,这将是过去24小时 - 不是"当地时间相同,但是昨天"。