From 65fee3fc973f952bdc97ab7c97317f4a6aa0845f Mon Sep 17 00:00:00 2001 From: lengleng Date: Mon, 15 Jun 2020 13:03:39 +0800 Subject: [PATCH] =?UTF-8?q?:memo:=20Writing=20docs.=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E5=85=B3=E4=BA=8E=E6=97=B6=E9=97=B4=E8=BD=AC=E6=8D=A2=E8=A7=84?= =?UTF-8?q?=E5=88=99=E7=9A=84=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pigx/common/core/config/JacksonConfig.java | 13 ++++++++----- .../common/core/jackson/PigxJavaTimeModule.java | 10 ++++++++++ 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/config/JacksonConfig.java b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/config/JacksonConfig.java index d3c932a39..da53f09b9 100644 --- a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/config/JacksonConfig.java +++ b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/config/JacksonConfig.java @@ -15,24 +15,27 @@ import java.util.Locale; import java.util.TimeZone; /** - * JacksonConfig + * JacksonConfig 配置时间转换规则 + * {@link com.pig4cloud.pigx.common.core.jackson.PigxJavaTimeModule}、默认时区等 * * @author L.cm - * @author: lengleng - * @author: lishangbu - * @date: 2018/10/22 + * @author lengleng + * @author lishangbu + * @date 2020-06-15 */ @Configuration @ConditionalOnClass(ObjectMapper.class) @AutoConfigureBefore(JacksonAutoConfiguration.class) public class JacksonConfig { + private static final String ASIA_SHANGHAI = "Asia/Shanghai"; + @Bean @ConditionalOnMissingBean public Jackson2ObjectMapperBuilderCustomizer customizer() { return builder -> { builder.locale(Locale.CHINA); - builder.timeZone(TimeZone.getTimeZone("Asia/Shanghai")); + builder.timeZone(TimeZone.getTimeZone(ASIA_SHANGHAI)); builder.simpleDateFormat(DatePattern.NORM_DATETIME_PATTERN); builder.modules(new PigxJavaTimeModule()); }; diff --git a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/jackson/PigxJavaTimeModule.java b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/jackson/PigxJavaTimeModule.java index 53f1d04f1..f4b63d5b9 100644 --- a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/jackson/PigxJavaTimeModule.java +++ b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/jackson/PigxJavaTimeModule.java @@ -25,16 +25,26 @@ public class PigxJavaTimeModule extends SimpleModule { public PigxJavaTimeModule() { super(PackageVersion.VERSION); + + // ======================= 时间序列化规则 =============================== + // yyyy-MM-dd HH:mm:ss this.addSerializer(LocalDateTime.class, new LocalDateTimeSerializer(DateTimeFormatter.ofPattern(DatePattern.NORM_DATETIME_PATTERN))); + // yyyy-MM-dd this.addSerializer(LocalDate.class, new LocalDateSerializer(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN))); + // HH:mm:ss this.addSerializer(LocalTime.class, new LocalTimeSerializer(DateTimeFormatter.ofPattern(DatePattern.NORM_TIME_PATTERN))); + + // ======================= 时间反序列化规则 ============================== + // yyyy-MM-dd HH:mm:ss this.addDeserializer(LocalDateTime.class, new LocalDateTimeDeserializer(DateTimeFormatter.ofPattern(DatePattern.NORM_DATETIME_PATTERN))); + // yyyy-MM-dd this.addDeserializer(LocalDate.class, new LocalDateDeserializer(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN))); + // HH:mm:ss this.addDeserializer(LocalTime.class, new LocalTimeDeserializer(DateTimeFormatter.ofPattern(DatePattern.NORM_TIME_PATTERN))); }