@DateTimeFormat 和 @JsonFormat 註解完成日期引數接收和格式化輸出
阿新 • • 發佈:2021-09-01
入參格式化
使用 Spring 的 @DateTimeFormat 註解格式化引數,來解決上述問題
public class DateVo { // 接收日期引數 @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") private Date date; public void setDate(Date date){ this.date = date; } public Date getDate(){ return date; } }
輸出格式化
使用 jackson 的@JsonFormat 註解
public class DateVo { // 輸出格式 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date date; public void setDate(Date date){ this.date = date; } public Date getDate(){ return date; } }
時間格式正確,但實際上當前時間是 “2018-08-01 22:32:57” ,早了8個小時。因為,jackson在序列化時間時是按照國際標準時間GMT進行格式化的,而在國內預設時區使用的是CST時區,兩者相差8小時。
@JsonFormat( pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8" ) private Date date;