自定义处理
//将接收的前端字符串类型转换成Long类型
public class LongJsonDeserializer extends JsonDeserializer<Long> {
@Override
public Long deserialize(JsonParser jsonParser,
DeserializationContext deserializationContext) throws IOException {
String value = jsonParser.getText();
return StringUtils.isBlank(value) ? null : Long.parseLong(value);
}
}
//向前端返回时将Long转成字符串
public class LongJsonSerializer extends JsonSerializer<Long> {
@Override
public void serialize(Long value, JsonGenerator jsonGenerator,
SerializerProvider serializerProvider) throws IOException{
String text = (value == null ? null : String.valueOf(value));
if (text != null) {
jsonGenerator.writeString(text);
}
}
}
字段加上注解
@JsonDeserialize
@JsonSerialize
序列化使用。比如返回数据到前端。
@JsonDeserialize(using = LongJsonDeserializer.class)
@JsonSerialize(using = LongJsonSerializer.class)
private Long id;