使用JsonSerializer对返回前端数据的进行规定
Posted shouyaya
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用JsonSerializer对返回前端数据的进行规定相关的知识,希望对你有一定的参考价值。
例子:
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
以上是关于使用JsonSerializer对返回前端数据的进行规定的主要内容,如果未能解决你的问题,请参考以下文章
System.Text.Json.JsonSerializer.Serialize 返回空 Json 对象“”[重复]
.NET Core 3.0 JsonSerializer.Deserialize 返回dynamic类型对象
FasterXml - JsonSerializer HashMap
List to JSON with JsonSerializer.Serializer 返回 null