前端请求接口 Date 对应的时区问题

前端传一个时间值:2099-01-01T00:00:00+08:00 到springboot提供的restful接口,存入mysql数据库

发现数据库里存入的是:2098-12-31 16:00:00 ,这时mybatis的jdbctype未指定,使用默认的timestamp

时区不对,确认了linux系统,mysql本身的时区没有问题,那肯定是配置的问题。

springboot中使用的Date对象接受,直接打印输出值,时间是没问题的,所以一定是出在写数据库的部分。

mybatis的配置也没有问题,查到是连接数据库url的时区问题

serverTimezone=UTC
修改为
serverTimezone=GMT%2B8
不要用GMT+8 ,加号会有问题

再启动测试,写入数据库的是期望中的了


再说读取,返回给前端的是2019-06-04T02:51:31.000+0000 这样的,也需要转为东八区的

从数据库读出来的上面已经设置过了,肯定是没问题的,所以肯定是在对象转json的时候,springboot中

spring.jackson.time-zone这个参数设置成GMT+8,就可以了。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值