springboot 返回json格式數據時間格式配置方式
返回json格式數據時間格式配置
數據庫裡面查出來的時間是時間錯格式,前段需要處理才能展示相應的格式,自己一個個轉的話太麻煩,所以可以在apllication.property加入下面配置就可以
#時間戳統一轉換 spring.jackson.date-format=yyyy-MM-dd HH:mm:ss spring.jackson.time-zone=GMT+8
其中time-zone是時區偏移設置,如果不指定的話時間和北京時間會差八個小時。
返回json日期格式問題
SpringBoot中默認返回的日期格式類似於這樣:
"birth": 1537407384500
或者是這樣:
"createTime": "2018-09-18T10:54:06.000+0000"
以上都不滿足實際顯示需要
修改方式(僅限於使用默認的jackson解析包的情況):
application.properties/yml文件中修改默認的format格式:
spring.jackson.date-format=yyyy-MM-dd spring.jackson.time-zone=GMT+8 spring.jackson.serialization.write-dates-as-timestamps=false
其中上面的spring.jackson.date-format的值自己可以根據實際需要修改。
那麼修改後會出現一個問題:我如果想返回不同格式的怎麼辦?例如yyyy-MM-dd或者yyyy年MM月dd日 HH時mm分ss秒
那麼可以在上面的配置文件中設定一個默認的格式,然後如果需要其他格式 隻需要在相關的實體類中的字段裡面加上如下註解:
@JsonFormat(pattern="yyyy年MM月dd日 HH時mm分ss秒",timezone = "GMT+8") private Date registerDate;
此時返回格式會優先使用註解設置的格式。通過以上方式可以做到靈活多變。
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。
推薦閱讀:
- java日期時間格式化@JsonFormat與@DateTimeFormat的使用
- 關於springboot 配置date字段返回時間戳的問題
- Java日期轉換註解配置date format時間失效
- 使用@JsonFormat的一個坑及解決
- springboot前端傳參date類型後臺處理的方式