From 8d364b99f2a1a261acd997c392ee18c642c0b095 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A4=9C=E9=9B=AA=E5=89=91=E8=BE=B0?= <1107047387@qq.com> Date: Thu, 22 Feb 2024 11:39:48 +0000 Subject: [PATCH] =?UTF-8?q?[update]=20jsonUtil=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 夜雪剑辰 <1107047387@qq.com> --- .../java/com/yexuejc/base/util/JsonUtil.java | 31 ++++++++++--------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/yexuejc/base/util/JsonUtil.java b/src/main/java/com/yexuejc/base/util/JsonUtil.java index 9a7ae1d..a83aa68 100644 --- a/src/main/java/com/yexuejc/base/util/JsonUtil.java +++ b/src/main/java/com/yexuejc/base/util/JsonUtil.java @@ -1,5 +1,14 @@ package com.yexuejc.base.util; +import java.io.IOException; +import java.io.InputStream; +import java.sql.Timestamp; +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.util.Map; +import java.util.TimeZone; +import java.util.logging.Logger; + import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.core.JsonParseException; @@ -24,15 +33,6 @@ import com.yexuejc.base.converter.LocalDateTimeSerializer; import com.yexuejc.base.converter.TimestampDeserializer; import com.yexuejc.base.converter.TimestampSerializer; -import java.io.IOException; -import java.io.InputStream; -import java.sql.Timestamp; -import java.time.LocalDate; -import java.time.LocalDateTime; -import java.util.Map; -import java.util.TimeZone; -import java.util.logging.Logger; - /** * json工具类,基于jackson * @@ -42,7 +42,7 @@ import java.util.logging.Logger; * @date 2018/9/3 15:28 */ public class JsonUtil { - private static Logger log = Logger.getLogger(JsonUtil.class.getName()); + private static final Logger log = Logger.getLogger(JsonUtil.class.getName()); private JsonUtil() { } @@ -50,10 +50,9 @@ public class JsonUtil { /** * 作为单例全局使用 */ - private static JsonMapper jsonMapper = new JsonMapper(); + private static final JsonMapper jsonMapper = new JsonMapper(); static { - JsonUtil.setJavaTimeModule(JsonUtil.jsonMapper); JsonUtil.initDefaultObjectMapper(JsonUtil.jsonMapper); } @@ -94,14 +93,17 @@ public class JsonUtil { * * * @param jsonMapper + * @return */ - private static void initDefaultObjectMapper(ObjectMapper jsonMapper) { + private static ObjectMapper initDefaultObjectMapper(ObjectMapper jsonMapper) { + JsonUtil.setJavaTimeModule(jsonMapper); //值为空时,NON_NULL:舍去字段;ALWAYS:保留字段 jsonMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); jsonMapper.configure(JsonParser.Feature.ALLOW_SINGLE_QUOTES, true); jsonMapper.configure(JsonParser.Feature.ALLOW_UNQUOTED_FIELD_NAMES, true); jsonMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); jsonMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false); + return jsonMapper; } /** @@ -121,8 +123,7 @@ public class JsonUtil { * * @return */ - public static ObjectMapper acceptEmptyStringAsNullObject() { - JsonMapper jsonMapper = new JsonMapper(); + public static ObjectMapper acceptEmptyStringAsNullObject(JsonMapper jsonMapper) { setJavaTimeModule(jsonMapper); //值为空时,ALWAYS:保留字段,默认字符串值为“”,对象值为null jsonMapper.setSerializationInclusion(JsonInclude.Include.ALWAYS);