我的 Grails 应用程序中有以下行将默认时区设置为 UTC:
TimeZone.setDefault(TimeZone.getTimeZone("UTC"))
我有一个Audit
带有dateCreated
字段的实体:
class Audit {
Date dateCreated
String message
}
然后我创建并保存它的一个实例:
def audit = new Audit(message: "Testing audit message")
这会将其作为 UTC 时间正确保存到我的数据库中。但是,当我尝试回读时:
audit = Audit.get(1)
时间戳被读回为本地时间。因此,如果我的时区是 +1 UTC 并且当前本地时间是12:34:56 BST,那么将保存到数据库中的是11:34:56,但是当我读回它时,它变成了 11:34:56 BST . 有谁知道如何解决这个问题,以便 Grails 将时间戳读回为 UTC 并相应地转换它?