spring boot+mongodb时间不一致问题
应用中为某个实体对象设置创建时间,采用java.util.Date类型,直接new Date()产生。存到Mongodb后发现该字段的值少了8个小时,即比实际保存时的时间晚了8小时。究其原因是因为Mongodb是以标准的 格林尼治时间(GMT)为时间保存,没有设置当地时区,而北京时间属于东八区,比其早了八小时。实际上两个时间值表示的是同一时间,只是查询时返回的数据显示就不正常,为了让客户端看到的时间显示成北京时间,可以在spring boot配置文件中增加一个json解析的时区配置即可(这里使用jackson作为json解析框架,其他框架类似):spring.jackson.timeZone=GMT+8。