遇到一個問題,springboot升級成2.0後,從資料庫查出來的日期,用Date接收,最後直接返回給前端,在谷歌瀏覽器中能正常顯示成yyyy-MM-dd HH:mm:ss格式。但是在IE瀏覽器中日期顯示的是“亂碼”,因為springboot1.x版本的預設將Date欄位返回的是時間戳,而Google、IE都會自動將時間戳轉換成yyyy-MM-dd HH:mm: ss;在springboot2.0後,spring會將Date欄位自動給轉成UTC字串了(在沒有配置的情況下),所以date需要轉換成時間戳還是yyyy-MM-dd HH:mm:ss,需要在spring增加如下配置,我選的是返回時間戳配置,成功解決了問題。
配置返回時間戳
spring jackson: serialization: write-dates-as-timestamps:true
全域配置返回字串
spring: jackson: date-format: yyyy-MM-dd HH:mm:ss time-zone: GMT+8
有了第二個配置,就不需要在每個實體類別的日期屬性上加上@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT 8")這個註解了
# 指定执行环境 spring: profiles: # active: @env@ active: dev jackson: serialization: WRITE_DATES_AS_TIMESTAMPS: true
以上是springboot配置date欄位傳回時間戳記的問題怎麼解決的詳細內容。更多資訊請關注PHP中文網其他相關文章!