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);
    }
}
相关推荐
元界metalite1 小时前
SpringBoot整合RocketMQ-毒丸消息还要无限重试吗
后端
用户3126874877201 小时前
ConcurrentHashMap 怎么保证线程安全?从分段锁到 CAS+synchronized
java
vipxieliang1 小时前
ValidX vs Apache Commons Validator:功能与性能对比
java·spring boot
SimonKing1 小时前
升级Spring Boot 4后,从 Jackson 2 到 3,到底有哪些变化
java·后端·程序员
YIAN1 小时前
Docker + Nginx 核心原理扫盲:从环境隔离到反向代理,运维面试必考点
后端·docker·面试
万物智能1 小时前
启动链路与分区—【万物智能之开源鸿蒙OpenHarmony系统实战开发系列教程】
后端·架构
寒蝉1281 小时前
一个简单操作是怎么在分布式环境下变复杂的
后端
苏三的开发日记1 小时前
Windows宿主机+VMware CentOS虚拟机 + 同一个Wi-Fi下的其他实体电脑,三者可以互相访问
后端
boooooooom1 小时前
手把手做一个图 RAG 烹饪问答系统:Neo4j + Milvus + LLM 的工程实践
前端·javascript·后端
newerp1 小时前
Golang 切片底层结构
后端·程序员·go