关于java:数据库时间和-java-时间不一致解决方案

36次阅读

共计 583 个字符,预计需要花费 2 分钟才能阅读完成。

java 增加 date 到数据库,工夫不统一

应用 date 增加到数据库,数据库显示的时候和 date 工夫相差 8 个小时,这是因为 mysql 上的时区的问题,这里有两个解决方案:

计划一:设置数据库连贯时区

在 springboot 的配置文件中的 spring.datasource.url 增加后缀 serverTimezone=Asia/Shanghai。设置本地时区。

计划二:设置 mysql 时区

查看 mysql 时区:

show variables like "%time_zone%";

这里分成批改以后会话和全局会话

  • 批改以后会话只对以后会话无效,退出会话就生效
  • 批改全局会话是要退出以后会话后才无效

批改以后会话:

SET time_zone = "+8:00";

批改全局会话:

SET global time_zone = "+8:00";

这里最好批改 全局会话

java 获取 date 工夫和前端展现不统一

后端工夫和数据库工夫相差 8 个小时

起因

springboot 中的 @RestController 注解接口返回 json 格局数据,对于 date 类型的数据,会被 spring-boot 默认的 Jackson 框架转化,而 Jackson 框架默认时区是 GMT(绝对于中国少了 8 个小时)。

解决方案

application.yml 增加配置:

spring:
  jackson:
    time-zone: GMT+8

如果感觉文章对你有帮忙的话,请点个赞吧!

正文完
 0