一:问题
在往数据库中插入(读取)时间的时候,会相差八个小时,这是常见的问题,原因是因为时区设置的问题
二:知识点
UTC:Coordinated Universal Time 协调世界时
GMT:Greenwich Mean Time 格林尼治标准时间。(在协调世界时意义上的0时区,即GMT = UTC+0)
中国的时间是【东八区】,比GMT多八个小时,即 GMT+8(或UTC+8,但习惯上还是用GMT+8)
三:原因
我们的系统时间是东八区,而我们连接数据库的时候若写成这样:
那么程序就会自动将我们获取到的系统时间减去八小时存入数据库,这就是数据库存取时间差距八小时的原因
四:解决方法
将serverTimezone=UTC改为serverTimezone=GMT%2b8即可(GMT%2b8是GMT+8的意思)