專案

一般

配置概況

動作

工作單 #402

進行中

驗證 data 與 web 時區問題

是由 rock chen17 天 前加入. 於 16 天 前更新.

狀態:
New
優先權:
MEDIUM
被分派者:
開始日期:
2026-02-12
完成日期:
完成百分比:

0%


概述

先以此設定:

  1. db connection string : UTC
  2. data timezone: UTC
  3. web timezone: taipei

確認:

  1. db 應為 UTC
  2. web UI 應為 +8
  3. web 查詢條件 應為 +8
  4. data API 回應應為 UTC

是由 rock chen17 天 前更新

  • 主旨驗證 data 與 web 設定 變更為 驗證 data 與 web 時區問題

是由 rock chen17 天 前更新

  • 優先權LOW 變更為 MEDIUM

是由 evan lu16 天 前更新

根據測試觀察與分析,確認時區偏移問題原因為:

容器透過Dockerfile設定成UTC時間;
data專案在@Configuration執行了TimeZone.setDefault,
但並沒有影響到user.timezone,user.timezone依然是UTC。

當@CreationTimestamp時系統拿到的是UTC時間(A time),
但當Hibernate要進行與DB溝通的儲存時,詢問了TimeZone.getDefault,
獲得了這是UTC+8的資訊,於是把這個A time當成UTC+8時間,進行了-8的調整,
於是原本的UTC時間變成UTC-8時間(B time)被存入DB。

B time(存入時間) 比 A time(實際時間) 向後偏移8小時。

動作

匯出至 Atom PDF