返回顶部
首页 > 资讯 > 后端开发 > Python >如何解决springboot数据库查询时出现的时区差异问题
  • 239
分享到

如何解决springboot数据库查询时出现的时区差异问题

Python 官方文档:入门教程 => 点击学习

摘要

目录SpringBoot数据库查询时出现的时区差异1.在连接数据库的配置上我们添加一项2.直接在boot配置文件中增加jackson配置springboot new Date()时区

springboot数据库查询时出现的时区差异

最近项目中使用到多数据源将Mysql库中的数据迁移到monGo库中,发现取出后的数据与原数据时间上会出现8小时的相差,

最后度娘后终于解决问题,记录一下:

网上看到了两种比较实用的方法,因为使用的springboot原因,所以我这里使用的是在配置文件application.yml中进行修改,另外其他方法网上都可以搜到,

1.在连接数据库的配置上我们添加一项

&serverTimezone=GMT%2b8
 primary:
      jdbc-url: jdbc:mysql://******:3306/***?useUnicode=true&characterEncoding=UTF8&zeroDateTimeBehavior=convertToNull&serverTimezone=GMT%2b8
      username: ****
      passWord: *****
    secondary:
      jdbc-url: jdbc:mysql://*******:3306/***?useUnicode=true&characterEncoding=UTF8&zeroDateTimeBehavior=convertToNull&serverTimezone=GMT%2b8
      username: *****
      password: ********

原格式应该是这样的:

&serverTimezone=GMT+8 这里使用%2b替换 + 号

2.直接在boot配置文件中增加jackson配置

#在application.yml中增加配置
spring:
    jackson:
        time-zone: GMT+8

这样就可以成功将时间修改成功了,还有其他方法,大家可以查阅哦

springboot new Date()时区差8小时

1 在k8s环境中,在代码中比较时间。new Date() 下相差8小时

检查宿主机 时区是 cst时区

用java代码写出controller时区发现是GMT

代码如下:

Calendar calendar = Calendar.getInstance();      
        System.out.println("目前时间:" + calendar.getTime());
        System.out.println("Calendar时区::" + calendar.getTimeZone().getID());
        System.out.println("user.timezone:" + System.getProperty("user.timezone"));
        System.out.println("user.country:" + System.getProperty("user.country"));
        System.out.println("默认时区:" + TimeZone.getDefault().getID());

输出时区是 GMT 跟宿主机还不一样,搞不定运维,自己搞把

看来还是时区搞的鬼-

1、数据库链接db添加参数 serverTimezone=Asia/Shanghai

2、springboot启动脚本添加 -Duser.timezone=GMT+08

3、jackson 全局配置

spring.jackson.date-fORMat: yyyy-MM-dd HH:mm:ss
spring.jackson.time-zone: GMT+8

4、jackson 注解

@JSONFormat(timezone = “GMT+8”, pattern = “yyyy-MM-dd HH:mm:ss”)

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: 如何解决springboot数据库查询时出现的时区差异问题

本文链接: https://lsjlt.com/news/177025.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 如何解决springboot数据库查询时出现的时区差异问题
    目录springboot数据库查询时出现的时区差异1.在连接数据库的配置上我们添加一项2.直接在boot配置文件中增加jackson配置springboot new Date()时区...
    99+
    2023-01-06
    springboot数据库查询 数据库查询时区差异 springboot查询
  • springboot数据库查询时出现时区差异问题怎么解决
    今天小编给大家分享一下springboot数据库查询时出现时区差异问题怎么解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。...
    99+
    2023-07-04
  • 解决数据库查询时Null的问题(如SUM函数)
    select ISNULL(sum(字段),0) from tableName; ...
    99+
    2024-04-02
  • 如何解决Mybatis查询时数据丢失的问题
    这篇文章主要为大家展示了“如何解决Mybatis查询时数据丢失的问题”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何解决Mybatis查询时数据丢失的问题”这篇文章吧。Mybatis查询时数据...
    99+
    2023-06-28
  • 数据库update时出现的问题怎么解决
    这篇文章主要介绍了数据库update时出现的问题怎么解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇数据库update时出现的问题怎么解决文章都会有所收获,下面我们一起来看看...
    99+
    2024-04-02
  • 怎么解决MySQL数据库出现慢查询问题
    这篇文章主要讲解了“怎么解决MySQL数据库出现慢查询问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么解决MySQL数据库出现慢查询问题”吧!1、My...
    99+
    2024-04-02
  • 解决Mybatis的serverTimezone时区出现问题
    目录Mybatis serverTimezone时区出现问题错误信息出现原因解决Mybatis 插件碰到的时区问题及用法Mybatis serverTimezone时区出现问题 错误...
    99+
    2024-04-02
  • Mybatis查询时数据丢失的问题及解决
    目录Mybatis查询时数据丢失经过排查得出结论解决办法Mybatis查询部分字段漏查问题(mysql)Mybatis查询时数据丢失 公司里的实体类和mapper文件均由mybati...
    99+
    2024-04-02
  • 如何解决使用@ManyToMany查询数据时的死循环问题
    本篇内容主要讲解“如何解决使用@ManyToMany查询数据时的死循环问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何解决使用@ManyToMany查询数据时的死循环问题”吧!使用@Man...
    99+
    2023-06-21
  • 如何实现mysql查询每小时数据和上小时数据的差值
    这篇文章主要讲解了如何实现mysql查询每小时数据和上小时数据的差值,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。一、前言    &nb...
    99+
    2024-04-02
  • 如何解决idea中连接数据库时出现SSL错误的问题
    这篇文章将为大家详细讲解有关如何解决idea中连接数据库时出现SSL错误的问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在配置环境的xml中更改url更改前更改后关于...
    99+
    2024-04-02
  • 如何解决mybatis-plus查询耗时慢的问题
    这篇文章主要介绍如何解决mybatis-plus查询耗时慢的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!mybatis-plus 查询耗时慢1、现象查出30000多条id然后用EntityWrapper&nbs...
    99+
    2023-06-20
  • 解决Oracle数据库出现问题时的脚本有哪些
    本篇内容主要讲解“解决Oracle数据库出现问题时的脚本有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“解决Oracle数据库出现问题时的脚本有哪些”吧!&...
    99+
    2024-04-02
  • Mysql如何解决数据库N+1查询问题
    这篇文章主要介绍Mysql如何解决数据库N+1查询问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!简介在orm框架中,比如hibernate和mybatis都可以设置关联对象,比如...
    99+
    2024-04-02
  • 解决SAS连接Oracle数据库时出现引擎问题
    解决SAS连接Oracle数据库时出现引擎问题,需要具体代码示例 在使用SAS软件进行数据分析时,经常需要连接数据库来获取数据进行分析处理。而其中连接Oracle数据库是比较常见的操作...
    99+
    2024-03-08
    引擎 oracle sas
  • 解决使用@ManyToMany查询数据时的死循环问题
    目录使用@ManyToMany查询数据时的死循环一、在Role中加上@JsonIgnore注解二、将双向关联改为单向关联单向多对多@ManyToMany的使用和理解使用@ManyTo...
    99+
    2024-04-02
  • 如何解决InternetExplorer9安装时出现的问题
    要解决Internet Explorer 9安装时出现的问题,可以尝试以下方法:1. 检查系统要求:确保你的计算机符合Interne...
    99+
    2023-09-07
    Internet
  • 时序数据库TDengine写入查询的问题分析
    目录写入问题必须为每个Tag组合起一个表名Tag支撑与管理不支持乱序写入查询问题求topN的groupdownsampling和aggregation查询聚合架构写入问题 必须为每个...
    99+
    2024-04-02
  • 如何解决java获取时间相差8小时的问题
    目录三种时间差错问题: 原因: 解决方案: 总结:都是时区问题三种时间差错问题: java下使用new date()获取的时间会和真实的本地时间相差8小时。 本地...
    99+
    2024-04-02
  • mysql查询每小时数据和上小时数据的差值实现思路详解
    一、前言       需求是获取某个时间范围内每小时数据和上小时数据的差值以及比率。本来以为会是一个很简单的sql,结果思考两分钟发现并不简单,网上也没找到...
    99+
    2022-05-10
    mysql 每小时数据差值 mysql 数据差值
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作