springboot 之 时区问题

背景

在有国际化业务的系统中,时间保存和计算涉及到不同时区问题,因此这里记录下处理方法

解决方法

服务器接收存储处理返回都按照 UTC来处理,具体时间由前端或者客户端处理之后显示。如果涉及到具体客户时间处理,需要获取客户所在时区之后处理。

设置方法

MySQL8.0设置0时区:

xml 复制代码
[mysqld]
default-time-zone = '+00:00'  # 设置为UTC时区

数据库连接池设置0时区:

yaml 复制代码
jdbc:mysql://localhost:3306/your_database?serverTimezone=UTC

springboot中设置0时区:

java 复制代码
@SpringBootApplication
public class Application {
    public static void main(String[] args) {
        // 设置JVM默认时区为UTC
        TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
        SpringApplication.run(Application.class, args);
    }
}
相关推荐
青云计划6 小时前
知光项目知文发布模块
java·后端·spring·mybatis
赶路人儿6 小时前
Jsoniter(java版本)使用介绍
java·开发语言
Victor3566 小时前
MongoDB(9)什么是MongoDB的副本集(Replica Set)?
后端
Victor3566 小时前
MongoDB(8)什么是聚合(Aggregation)?
后端
探路者继续奋斗7 小时前
IDD意图驱动开发之意图规格说明书
java·规格说明书·开发规范·意图驱动开发·idd
消失的旧时光-19438 小时前
第十九课:为什么要引入消息队列?——异步系统设计思想
java·开发语言
yeyeye1118 小时前
Spring Cloud Data Flow 简介
后端·spring·spring cloud
A懿轩A8 小时前
【Java 基础编程】Java 面向对象入门:类与对象、构造器、this 关键字,小白也能写 OOP
java·开发语言
Tony Bai8 小时前
告别 Flaky Tests:Go 官方拟引入 testing/nettest,重塑内存网络测试标准
开发语言·网络·后端·golang·php
乐观勇敢坚强的老彭8 小时前
c++寒假营day03
java·开发语言·c++