当前位置:  开发笔记 > 数据库 > 正文

MongoDB TimeZone

如何解决《MongoDBTimeZone》经验,为你挑选了1个好方法。

我写入我的mongoDB数据库,例如startDate,startdate总是一周的星期一(我用,我在欧洲中部时区).

"startDate" : ISODate("2014-12-28T23:00:00Z"), 
"startDate" : ISODate("2015-03-29T22:00:00Z")
"startDate" : ISODate("2015-04-05T22:00:00Z"), 
"startDate" : ISODate("2015-10-25T23:00:00Z")

我很困惑,因为有时dateformat是:

2014-12-28T23:00:00Z  (sunday, 23h)

有时它是:

2015-04-05T22:00:00Z (sunday, 22h)

在Java代码中,日期是星期一,00h - >这没关系.有谁知道这里发生了什么,为什么记录的时间不同以及如何防止这种情况?



1> Alex..:
夏令时

MongoDB 默认以UTC格式存储日期.

由于您处于中欧时区,这意味着根据日期是否在夏令时(DST)期间或之外,存在一个或两个小时的差异.2015年DST于3月29日开始,并于10月25日结束.因此,12月28日的偏差为1小时,4月5日的偏差为2小时.

如果要阻止这种情况,则应将本地日期时间值转换为UTC时间,然后再将其保存到MongoDB.或者,正如Markus Mahlberg指出的那样,在加载日期后转换为当地时间.


加载日期后,是否有可能转换为当地时间?
推荐阅读
手机用户2402851155
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有