1. Springboot使用的默認json解析框架是jackjson框架
2. jackjson解析框架在解析實體類里面是date數據類型的數據時的默認格式是:UTC類型,即yyyy-MM-dd'T'HH:mm:ss.SSS 並且默認為+8時區,即時間基礎上加8小時
解決方案:
1. 在實體Date類型的字段上使用@JsonFormat注解格式化日期,注意格式
@JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
2. 通過下面方式取消timestamps形式
objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);
備注:
如果項目中使用json解析框架為fastjson框架,則可使用如下解決方法:
1. 在實體字段上使用@JsonFormat注解格式化日期
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")