java 2020-06-29T08:48:00.000+0000 轉換成正常時間格式的解決辦法

在數據庫裏的時間格式爲: DATE 類型
2020-05-12 13:30:00

接口返回時,格式變成了
2020-05-12T13:30:00.000+0000

解決方法:

  1. 新建 DateJsonSerializer
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;

import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
* 接收參數時觸發
*/
public class DateJsonSerializer extends JsonSerializer<Date> {
    public static final SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    @Override
    public void serialize(Date date, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException, JsonProcessingException {
        jsonGenerator.writeString(format.format(date));
    }
}
  1. 在返回的參數上加上@JsonSerialize

//	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@JsonSerialize(using = DateJsonSerializer.class)
	private Date recordTime;

ps: 直接加上 @JsonFormat(pattern = “yyyy-MM-dd HH:mm:ss”,timezone = “GMT+8”) 也可以實現

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章