Commit d6b426970b6e0fd86712ecbdecd201cd9f7d89aa

Authored by halfninety
1 parent 61c4053c

序列化配置修改名称

yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/jackson/config/YudaoJacksonAutoConfiguration.java
1 package cn.iocoder.yudao.framework.jackson.config; 1 package cn.iocoder.yudao.framework.jackson.config;
2 2
  3 +import cn.iocoder.yudao.framework.common.util.json.JsonUtils;
3 import cn.iocoder.yudao.framework.jackson.core.databind.LocalDateTimeDeserializer; 4 import cn.iocoder.yudao.framework.jackson.core.databind.LocalDateTimeDeserializer;
4 import cn.iocoder.yudao.framework.jackson.core.databind.LocalDateTimeSerializer; 5 import cn.iocoder.yudao.framework.jackson.core.databind.LocalDateTimeSerializer;
5 -import cn.iocoder.yudao.framework.common.util.json.JsonUtils; 6 +import cn.iocoder.yudao.framework.jackson.core.databind.LocalTimeJson;
6 import com.fasterxml.jackson.databind.ObjectMapper; 7 import com.fasterxml.jackson.databind.ObjectMapper;
7 import com.fasterxml.jackson.databind.module.SimpleModule; 8 import com.fasterxml.jackson.databind.module.SimpleModule;
8 import lombok.extern.slf4j.Slf4j; 9 import lombok.extern.slf4j.Slf4j;
@@ -12,6 +13,7 @@ import org.springframework.context.annotation.Bean; @@ -12,6 +13,7 @@ import org.springframework.context.annotation.Bean;
12 import org.springframework.context.annotation.Configuration; 13 import org.springframework.context.annotation.Configuration;
13 14
14 import java.time.LocalDateTime; 15 import java.time.LocalDateTime;
  16 +import java.time.LocalTime;
15 17
16 @Configuration(proxyBeanMethods = false) 18 @Configuration(proxyBeanMethods = false)
17 @Slf4j 19 @Slf4j
@@ -30,12 +32,15 @@ public class YudaoJacksonAutoConfiguration { @@ -30,12 +32,15 @@ public class YudaoJacksonAutoConfiguration {
30 /* 32 /*
31 * 1. 新增Long类型序列化规则,数值超过2^53-1,在JS会出现精度丢失问题,因此Long自动序列化为字符串类型 33 * 1. 新增Long类型序列化规则,数值超过2^53-1,在JS会出现精度丢失问题,因此Long自动序列化为字符串类型
32 * 2. 新增LocalDateTime序列化、反序列化规则 34 * 2. 新增LocalDateTime序列化、反序列化规则
  35 + * 3. 新增LocalTime序列化、反序列化规则
33 */ 36 */
34 simpleModule 37 simpleModule
35 // .addSerializer(Long.class, ToStringSerializer.instance) 38 // .addSerializer(Long.class, ToStringSerializer.instance)
36 // .addSerializer(Long.TYPE, ToStringSerializer.instance) 39 // .addSerializer(Long.TYPE, ToStringSerializer.instance)
37 .addSerializer(LocalDateTime.class, LocalDateTimeSerializer.INSTANCE) 40 .addSerializer(LocalDateTime.class, LocalDateTimeSerializer.INSTANCE)
38 - .addDeserializer(LocalDateTime.class, LocalDateTimeDeserializer.INSTANCE); 41 + .addDeserializer(LocalDateTime.class, LocalDateTimeDeserializer.INSTANCE)
  42 + .addSerializer(LocalTime.class, LocalTimeJson.SERIALIZER)
  43 + .addDeserializer(LocalTime.class, LocalTimeJson.DESERIALIZABLE);
39 44
40 objectMapper.registerModules(simpleModule); 45 objectMapper.registerModules(simpleModule);
41 46
yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/jackson/core/databind/LocalTimeDeserializable.java renamed to yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/jackson/core/databind/LocalTimeJson.java
1 package cn.iocoder.yudao.framework.jackson.core.databind; 1 package cn.iocoder.yudao.framework.jackson.core.databind;
2 2
3 import com.fasterxml.jackson.datatype.jsr310.deser.LocalTimeDeserializer; 3 import com.fasterxml.jackson.datatype.jsr310.deser.LocalTimeDeserializer;
  4 +import com.fasterxml.jackson.datatype.jsr310.ser.LocalTimeSerializer;
4 5
5 import java.time.ZoneId; 6 import java.time.ZoneId;
6 import java.time.format.DateTimeFormatter; 7 import java.time.format.DateTimeFormatter;
7 8
8 import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_HOUR_MINUTE_SECOND; 9 import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_HOUR_MINUTE_SECOND;
9 10
10 -public class LocalTimeDeserializable {  
11 - // TODO: 2022/11/15 修改名字  
12 - public static final LocalTimeDeserializer INSTANCE = new LocalTimeDeserializer(DateTimeFormatter 11 +public class LocalTimeJson {
  12 +
  13 + public static final LocalTimeSerializer SERIALIZER = new LocalTimeSerializer(DateTimeFormatter
  14 + .ofPattern(FORMAT_HOUR_MINUTE_SECOND)
  15 + .withZone(ZoneId.systemDefault()));
  16 +
  17 + public static final LocalTimeDeserializer DESERIALIZABLE = new LocalTimeDeserializer(DateTimeFormatter
13 .ofPattern(FORMAT_HOUR_MINUTE_SECOND) 18 .ofPattern(FORMAT_HOUR_MINUTE_SECOND)
14 .withZone(ZoneId.systemDefault())); 19 .withZone(ZoneId.systemDefault()));
15 20
yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/jackson/core/databind/LocalTimeSerializable.java deleted
1 -package cn.iocoder.yudao.framework.jackson.core.databind;  
2 -  
3 -import com.fasterxml.jackson.datatype.jsr310.ser.LocalTimeSerializer;  
4 -  
5 -import java.time.ZoneId;  
6 -import java.time.format.DateTimeFormatter;  
7 -  
8 -import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_HOUR_MINUTE_SECOND;  
9 -  
10 -public class LocalTimeSerializable {  
11 - // TODO: 2022/11/15 修改名称  
12 -  
13 - public static final LocalTimeSerializer INSTANCE = new LocalTimeSerializer(DateTimeFormatter  
14 - .ofPattern(FORMAT_HOUR_MINUTE_SECOND)  
15 - .withZone(ZoneId.systemDefault()));  
16 -  
17 -}