Long类型值过长,前端丢失精度变00,解决方案

后端(Java)数据获取正常,前端显示精度有误。。。

搜索资料部分解决方案要求把Long类型转成String类型返回前端,这个治标不治本。。。

利用JsonSerializer完成注解,完美解决Long类型精度问题

继承JsonSerializer类

com.fasterxml.jackson.databind.JsonSerializer;
public class JsonLongSerializer extends JsonSerializer {
    @Override
    public void serialize(Long aLong, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException {
        jsonGenerator.writeString(Long.toString(aLong));
    }
}

找到VO类,在Long类型字段上面添加注解

@JsonSerialize(using = JsonLongSerializer.class )
private Long voucherId = null;

你可能感兴趣的:(sping,boot)