datetime - 检查时间戳是否为 1 小时前 - Groovy
问题描述
我有一个时间戳(submitTime),我需要检查它是否小于 1 小时。时间戳以微秒为单位,包括日期。
currentTime = 1527530605357000000(2018 年 5 月 28 日星期一下午 6:03:25.357)
submitTime = 1527529918658907821(2018 年 5 月 28 日星期一下午 5:51:58.659)
long currentTime = (long) (new Date().getTime()*1000000)
submitTime = job.SubmitTime // part of the code
oneHhour = 3600000000
if (currentTime - submitTime > oneHhour) {
println job.Name + " env is up more than 1 hour";
但它不起作用,因为结果是 686698092179 并且它不代表时间。帮助?
解决方案
在 groovy 中,您可以使用更直观的 TimeCategory:
def date = new Date(timestampInLong)
use (groovy.time.TimeCategory) {
println (date > new Date() - 1.hour)
}
推荐阅读
- oracle - 具有角色和特权的 Oracle 用户
- java - 有没有办法在一个请求中组合输出流和打印器?
- jquery - 如何遍历表以获取具有选中状态的复选框的值?
- javascript - Chrome 控制台中的速记属性初始值设定项无效
- c# - 修改 Ms-Access 表结构
- python - 如何通过重写 sys.excepthook 来处理 PyQt5 中的错误?
- php - 我的应用程序中的哪些文件使 Mysql 查询日志条目变慢
- windows - 如何创建一个基本的 PowerShell 脚本来运行简单的命令并将结果输出到终端?
- html - 文本两边的行溢出
- android - 如何为不同尺寸的 Android 创建 UI