我在MongoDB服務器上以UTC存儲時間。如何在MongoDB/Casbah中將日期時間讀回UTC?
當閱讀他們回來,使用:
import org.joda.time.DateTime
...
val time_utc: DateTime = dbo.get("time_utc").asInstanceOf[DateTime]
我得到轉換爲服務器的本地時區的時間。我應該如何閱讀日期始終保持UTC的日期?
我在MongoDB服務器上以UTC存儲時間。如何在MongoDB/Casbah中將日期時間讀回UTC?
當閱讀他們回來,使用:
import org.joda.time.DateTime
...
val time_utc: DateTime = dbo.get("time_utc").asInstanceOf[DateTime]
我得到轉換爲服務器的本地時區的時間。我應該如何閱讀日期始終保持UTC的日期?
我不知道什麼是 「JodaDateTime
」 是的,但假設它是一個別名org.joda.time.DateTime
:
val time_utc: JodaDateTime = dbo.get("time_utc").asInstanceOf[JodaDateTime].withZone(DateTimeZone.UTC)
應該工作。
我認爲你也可以使用DateTimeZone.setDefault(DateTimeZone.UTC)
來實現它,但是我從來沒有用過它,而且在需要使用UTC的地方明確指出它可能會更好,並且不會冒險破壞其他景點它可能被認爲是在當地時間。
謝謝。編輯該問題以刪除別名。 – akauppi 2014-09-25 12:11:32
通過在服務器進程開始時將JodaDateTime設置爲在UTC時區中運行來解決問題。 DateTimeZone.setDefault(DateTimeZone.UTC) – akauppi 2014-09-25 12:08:41