問題描述:
用Java從MongoDB中取出DateTime類型字段的數據,輸出后會發現輸出的日期與MongoDB中顯示的日期不一樣,之間相關8小時。
出現問題原因:
mongodb對日期的處理都是按照標准時區儲存的,不保留時區的特征.也就是只要保存到mongodb的日期類型,都是標准時區的時間!而java.util.Date 沒有設置時區,是使用默認的時區。所以它們會出現相差8小時的問題出現。
這個問題可以忽略,按正常編程編寫就可以。
如果你用的工具是mongoVUE,並且想在mongoVUE中看到的日期是正確的日期時,可以設置一下mongoVUE。
設置方法:
Tools -> Preferences -> 在左邊選擇Views -> 在右邊的" Display dates in "框中選擇Local Timezone -> 最后保存,重新打開表即可。
PS:mongoVUE 版本為 mongoVUE 1.5.3.0