From 7b76691afab19db672429c327b3d73d0832744a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Sun, 28 Sep 2025 10:21:53 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20bug-763=20=E5=AD=97=E6=AE=B5=E6=90=9C?= =?UTF-8?q?=E7=B4=A2=E6=97=B6=EF=BC=8C=E9=BB=98=E8=AE=A4=E5=8E=BB=E9=99=A4?= =?UTF-8?q?=E6=90=9C=E7=B4=A2=E5=85=B3=E9=94=AE=E5=AD=97=E7=9A=84=E5=89=8D?= =?UTF-8?q?=E5=90=8E=E7=A9=BA=E6=A0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wms/starter/config/JacksonConfig.java | 30 +++++++++++++++---- 1 file changed, 25 insertions(+), 5 deletions(-) diff --git a/nflg-wms-starter/src/main/java/com/nflg/wms/starter/config/JacksonConfig.java b/nflg-wms-starter/src/main/java/com/nflg/wms/starter/config/JacksonConfig.java index 59fe051a..cc395a4b 100644 --- a/nflg-wms-starter/src/main/java/com/nflg/wms/starter/config/JacksonConfig.java +++ b/nflg-wms-starter/src/main/java/com/nflg/wms/starter/config/JacksonConfig.java @@ -1,7 +1,9 @@ package com.nflg.wms.starter.config; import cn.hutool.core.date.DatePattern; +import cn.hutool.core.util.StrUtil; import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.*; import com.fasterxml.jackson.databind.module.SimpleModule; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; @@ -27,14 +29,15 @@ public class JacksonConfig { public ObjectMapper objectMapper() { return new ObjectMapper() .registerModule(new JavaTimeModule()) - .registerModule(customDateTimeModule()) + .registerModule(dateTimeModule()) .registerModule(bigDecimalModule()) - .configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false) - .configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false) - .configure(SerializationFeature.INDENT_OUTPUT, false); + .registerModule(stringModule()) + .disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS) + .disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES) + .disable(SerializationFeature.INDENT_OUTPUT); } - private SimpleModule customDateTimeModule() { + private SimpleModule dateTimeModule() { SimpleModule module = new SimpleModule(); module.addSerializer(LocalDateTime.class, new LocalDateTimeSerializer(DateTimeFormatter.ofPattern(DatePattern.NORM_DATETIME_PATTERN))); module.addDeserializer(LocalDateTime.class, new LocalDateTimeDeserializer(DateTimeFormatter.ofPattern(DatePattern.NORM_DATETIME_PATTERN))); @@ -52,6 +55,12 @@ public class JacksonConfig { return module; } + private SimpleModule stringModule() { + SimpleModule module = new SimpleModule(); + module.addDeserializer(String.class, new TrimStringDeserializer()); + return module; + } + public static class BigDecimalPlainSerializer extends JsonSerializer { @Override public void serialize(BigDecimal value, JsonGenerator gen, SerializerProvider serializers) @@ -64,4 +73,15 @@ public class JacksonConfig { } } } + + /** + * 去除字符串首尾空格 + */ + public static class TrimStringDeserializer extends JsonDeserializer { + @Override + public String deserialize(JsonParser p, DeserializationContext ctxt) + throws IOException { + return StrUtil.trim(p.getValueAsString()); + } + } } \ No newline at end of file