例子:
1.將Date類型從毫秒級變為秒級的:
a.編寫一個繼承JsonSerializer的類:
public class Data2LongSerializer extends JsonSerializer<Date> { @Override public void serialize(Date date, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException { jsonGenerator.writeNumber(date.getTime()/1000); } }
b.在返回頁面的VO對象中添加注解
/** 創建時間. */ @JsonSerialize(using = Data2LongSerializer.class) private Date createTime; /** 更新時間. */ @JsonSerialize(using = Data2LongSerializer.class) private Date updateTime;
2.若屬性為null則不返回
a.在返回頁面的VO對象添加注解(僅在單一返回頁面的VO對象生效):
@Data @JsonInclude(JsonInclude.Include.NON_NULL) public class OrderDTO {...}
b.在application.yml中設置(全局配置):
jackson:
default-property-inclusion: non_null
