欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringBoot接口返回的數(shù)據(jù)時(shí)間與實(shí)際相差8小時(shí)問(wèn)題排查方式

 更新時(shí)間:2025年02月22日 09:14:14   作者:不會(huì)畫畫的畫師  
文章描述了在部署SpringBoot應(yīng)用到容器中時(shí)遇到請(qǐng)求接口返回時(shí)間與實(shí)際相差8小時(shí)的問(wèn)題,并詳細(xì)分析了可能的原因及具體的排查步驟和解決方案,總結(jié)指出,環(huán)境初始時(shí)區(qū)未配置是根本原因,建議在應(yīng)用部署前配置好時(shí)區(qū)

SpringBoot接口返回的數(shù)據(jù)時(shí)間與實(shí)際相差8小時(shí)問(wèn)題

場(chǎng)景描述

部署了一個(gè)SpringBoot應(yīng)用在容器中,請(qǐng)求一個(gè)接口,接口返回的時(shí)間與實(shí)際相差8小時(shí)。

可能原因

1、容器的時(shí)區(qū)與實(shí)際時(shí)區(qū)相差差8小時(shí)

2、jvm時(shí)區(qū)與實(shí)際時(shí)區(qū)相差8小時(shí)

3、存入數(shù)據(jù)庫(kù)后的時(shí)間相差8小時(shí)

4、后端獲取的時(shí)間一致,但返回給前端后相差8小時(shí)

排查步驟

1、進(jìn)入容器查看時(shí)間

$ date

2、編寫一個(gè)java應(yīng)用查看jvm時(shí)間

import java.util.Date;

public class Demo {
   public static void main(String[] args) {
       Date date = new Date();
       System.out.println(date);
   }
}

3、查看數(shù)據(jù)庫(kù)時(shí)間

打開數(shù)據(jù)庫(kù),查看數(shù)據(jù)庫(kù)中存儲(chǔ)的數(shù)據(jù)庫(kù)時(shí)間是否與實(shí)際一致

4、在后臺(tái)打印出后端獲取到的數(shù)據(jù)的時(shí)間,是否與前端一致

解決方案

容器時(shí)區(qū)與實(shí)際時(shí)區(qū)相差8小時(shí):

如果排查第一步獲取到的時(shí)間與實(shí)際時(shí)間相差8小時(shí),建議在容器的Dockerfile中添加以下內(nèi)容:

RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' >/etc/timezone

jvm時(shí)區(qū)與實(shí)際時(shí)區(qū)相差8小時(shí):

如果排查第二步獲取到的時(shí)間與實(shí)際時(shí)間相差8小時(shí),可以在SpringBoot的面向切面上或者main類上加以下代碼

@PostConstruct
void started() {
    TimeZone.setDefault(TimeZone.getTimeZone("GMT+8"));
}

存入數(shù)據(jù)庫(kù)的時(shí)間與實(shí)際時(shí)區(qū)相差8小時(shí):

如果排查第三步獲取到的時(shí)間與實(shí)際時(shí)間相差8小時(shí),可以在SpringBoot應(yīng)用配置文件application.yml修改數(shù)據(jù)庫(kù)連接信息,url末尾添加serverTimeZone=GMT%2b8

Spring的json構(gòu)造器導(dǎo)致時(shí)區(qū)不一致:

以上三種情況的根本原因是由于環(huán)境初始的時(shí)區(qū)未配置,最佳方案就是在應(yīng)用部署前就配置好各自的時(shí)區(qū)。

排查第四步出現(xiàn)時(shí)區(qū)不一致,是spring的json構(gòu)造器的時(shí)區(qū)與實(shí)際的不一致。

可以修改springboot配置文件application.yml,添加以下內(nèi)容:

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

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論