|
|
@@ -9,10 +9,8 @@ import com.fasterxml.jackson.annotation.JsonFormat;
|
|
|
import com.fasterxml.jackson.annotation.PropertyAccessor;
|
|
|
import com.fasterxml.jackson.core.JsonGenerator;
|
|
|
import com.fasterxml.jackson.core.JsonParser;
|
|
|
-import com.fasterxml.jackson.databind.DeserializationContext;
|
|
|
-import com.fasterxml.jackson.databind.JsonDeserializer;
|
|
|
-import com.fasterxml.jackson.databind.JsonSerializer;
|
|
|
-import com.fasterxml.jackson.databind.SerializerProvider;
|
|
|
+import com.fasterxml.jackson.databind.*;
|
|
|
+import com.fasterxml.jackson.databind.module.SimpleModule;
|
|
|
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
|
|
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
|
|
|
import com.xjrsoft.common.handler.EasyExcelLocalDateTimeConverter;
|
|
|
@@ -53,7 +51,15 @@ public class JacksonConfig {
|
|
|
return builder -> {
|
|
|
builder.serializerByType(Long.class, ToStringSerializer.instance);
|
|
|
builder.serializerByType(Long.TYPE, ToStringSerializer.instance);
|
|
|
- builder.serializerByType(BigDecimal.class, ToStringSerializer.instance);
|
|
|
+
|
|
|
+ // 自定义 BigDecimal 序列化器,使用 toPlainString()
|
|
|
+ builder.serializerByType(BigDecimal.class, new JsonSerializer<BigDecimal>() {
|
|
|
+ @Override
|
|
|
+ public void serialize(BigDecimal value, JsonGenerator gen, SerializerProvider serializers) throws IOException {
|
|
|
+ gen.writeString(value.stripTrailingZeros().toPlainString());
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
builder.serializerByType(LocalDateTime.class, localDateTimeSerializer());
|
|
|
builder.serializerByType(INTERVALDS.class, intervalDSSerializer());
|
|
|
builder.deserializerByType(LocalDateTime.class, localDateTimeDeserializer());
|
|
|
@@ -143,4 +149,5 @@ public class JacksonConfig {
|
|
|
}
|
|
|
};
|
|
|
}
|
|
|
+
|
|
|
}
|