今天在开发的时候遇到了一个问题,就是在构造updateTime这个字段的时候把new Date()传进去,对应的DO字段也有用@TableField注明对应字段,但是在传进去后发现比现在的时间少了8个小时。第一眼就能看出是时区问题,不过之前在传时间进去的时候,也从没在new Date()或者在@TableField上注明时区啊。查找了一下,发现原来是配置文件中的mysql数据源那里的时区标注为UTC,也就是世界时区,正好和北京时间差了8小时。
问题找到了,将数据源时区部分改为北京时间即可,如
serverTimezone=Asia/Shanghai

本文记录了一次开发过程中遇到的问题:更新时间字段时出现8小时时差。原因是数据源配置使用了UTC时间,与本地时间不一致。通过调整数据源时区设置解决了该问题。
7160

被折叠的 条评论
为什么被折叠?



