package com.ltkj.tduck.utils; import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.databind.JsonSerializer; import com.fasterxml.jackson.databind.SerializerProvider; import java.io.IOException; /** * @author : wangqing * @description : Long转string 避免返回前端丢失精度 * @create : 2022/03/10 15:07 **/ public class LongToStringSerializer extends JsonSerializer { /** * Method that can be called to ask implementation to serialize * values of type this serializer handles. * * @param value Value to serialize; can not be null. * @param gen Generator used to output resulting Json content * @param serializers Provider that can be used to get serializers for */ @Override public void serialize(Long value, JsonGenerator gen, SerializerProvider serializers) throws IOException { if (value != null && value.toString().length() > 16) { gen.writeString(value.toString()); } else { gen.writeNumber(value); } } }