【mongoDB实战】mongo日期插入

本文探讨了使用MongoDB时遇到的时间显示偏差问题,即显示时间比实际插入时间少8小时的原因,并介绍了如何通过调整日期格式解决该问题。此外,文章还解释了ORM映射为Java.util.Date类型时的具体表现。

        小编在做mongo测试类测试的时候,发现mongo数据库中的时间和插入的时间不同,为了证明是怎么回事,小编做了多个测试,插入固定时间,插入当前时间,最终证实了这个问题:在使用mongoDB的可视化工具的时候,会遇到这样的问题:显示的日期要比插入的时间小8个小时.



其实,这个日期,我插入的是2016年12月1日,08:00:00.

        为了找到解决这个问题,小编做过以下的尝试:

http://blog.youkuaiyun.com/majinggogogo/article/details/51810025

对mongoVUE中的日期进行格式话,让他显示为正确的日期,这个方法确实有用,真的将mongoVUE中的日期显示为了正确的格式,同时出现了另一个问题,在用mongo的test类做测试的时候,报错了.然后我就乖乖的将设置还原了.写了一个查询的测试类,发现查询的时候尽管可视化工具里看到的是与正确时间相差8个小时,但是不影响查询.


原因:
        由于orm关系映射为java.util.date类型,mongoDB数据库中,时间保存为ISODate类型,在mysql中日期格式为时间戳的形式,在mongo中的日期类型,使用ISO格式,例如: ISODate("2016-10-13T03:03:37.312Z"),这样就会导致我们在用可视化工具查看的时候mongo的日期要比我们插入的小八个小时了,不需要进行任何的转换,尽管用就好了.



转载于:https://www.cnblogs.com/chenxiaochan/p/7237560.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值