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);
    }
}
相关推荐
我是若尘1 分钟前
我的需求代码被主干 revert 了,接下来我该怎么操作?
前端·后端·代码规范
dweizhao16 分钟前
这份AI报告,把美股干崩了
后端
野生技术架构师29 分钟前
1000道互联网大厂Java岗面试原题解析(八股原理+场景题)
java·开发语言·面试
jiankeljx1 小时前
Java实战:Spring Boot application.yml配置文件详解
java·网络·spring boot
cyforkk1 小时前
Java 开源项目指南:如何规范地发布首个 GitHub Release
java·开源·github
qqty12171 小时前
Java进阶学习之路
java·开发语言·学习
是苏浙1 小时前
初识集合框架
java·数据结构
Zzxy1 小时前
Spring Boot 参数校验
java·spring boot
黑眼圈子1 小时前
总结一下用Java做算法的常用类和方法
java·开发语言·算法
Magic--1 小时前
深入解析管道:最基础的进程间通信(IPC)实现
java·服务器·unix