我在我的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,当前本地时间是< strong>12:34:56 BST ,那么将保存11:34:56 到数据库中,但是当我重新读取它时,它会变成11:34:56 BST 。有人知道如何解决这个问题,使Grails将时间戳读回为UTC并相应地转换吗?