gpt4 book ai didi

java - 查看 JSP 站点中的时间戳是否超过 24 小时

转载 作者:行者123 更新时间:2023-12-02 10:37:14 24 4
gpt4 key购买 nike

我正在制作一个 JSP 网站,但我有点挣扎我正在使用 bash 来 ping IP - 并为最后一次更改设置时间戳Bash 将其设置为:

date "+%Y-%m-%d %H:%M:%S

如何检查此时间戳是否设置为小于 24 小时。如果 VPN 在不到 24 小时前断开连接,其含义是 - 它将标记为黄色文本。

最佳答案

java.time

既然您将问题标记为 java,我假设您想在 JSP 中使用 Java 来执行此操作。

    ZoneId bashZone = ZoneId.of("Europe/Copenhagen");
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("uuuu-MM-dd HH:mm:ss");
String timestampString = "2018-11-08 00:07:22";
ZonedDateTime timestamp = LocalDateTime.parse(timestampString, formatter)
.atZone(bashZone);
if (timestamp.isBefore(ZonedDateTime.now(bashZone).minusHours(24))) {
System.out.println(timestampString + " is more than 24 hours ago");
} else {
System.out.println(timestampString + " is *not* more than 24 hours ago");
}

当我刚才运行代码时,输​​出是:

2018-11-08 00:07:22 is not more than 24 hours ago

如果您的 bash 使用的时区不是欧洲/哥本哈根,请替换它。如果您相信 JVM 时区设置一致,则可以使用 ZoneId.systemDefault()。它并不总是如此,而且即使是在同一 JVM 中运行的另一个程序也可能随时更改,因此很脆弱。

java.time 是现代 Java 日期和时间 API,自 2014 年以来已经取代了旧的日期时间类 DateSimpleDateFormat 等。旧的类设计得很差,所以我建议您使用现代的类。

链接: Oracle tutorial: Date Time解释如何使用java.time

关于java - 查看 JSP 站点中的时间戳是否超过 24 小时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53187654/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com