我有以下線在我的Grails應用程序爲默認的時區設置爲UTC:Grails將datetime保存爲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並相應地轉換它?
這應該是默認設置TZ OR -Duser.timezone –