diff --git a/src/main/java/com/pearadmin/common/configure/CoreConfig.java b/src/main/java/com/pearadmin/common/configure/CoreConfig.java index 372417b6a7de4810fab88d1ba56f310af9ccbcf2..b9cfaf830bfcf1ec29030d36c9cc44cd99940031 100644 --- a/src/main/java/com/pearadmin/common/configure/CoreConfig.java +++ b/src/main/java/com/pearadmin/common/configure/CoreConfig.java @@ -2,6 +2,9 @@ package com.pearadmin.common.configure; import cn.hutool.extra.mail.MailAccount; import com.fasterxml.jackson.databind.Module; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.SerializationFeature; +import com.fasterxml.jackson.databind.module.SimpleModule; import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateSerializer; import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer; @@ -62,6 +65,17 @@ public class CoreConfig implements WebMvcConfigurer { return javaTimeModule; } + @Bean + public ObjectMapper objectMapper() { + ObjectMapper objectMapper = new ObjectMapper(); + objectMapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS); + objectMapper.registerModule(new JavaLongTypeModule()); + objectMapper.registerModule(new SimpleModule()); + objectMapper.registerModule(dateTime()); + return objectMapper; + } + + @Override public void addInterceptors(InterceptorRegistry registry) { registry.addInterceptor(rateLimitInterceptor).addPathPatterns("/**"); diff --git a/src/main/java/com/pearadmin/common/configure/JavaLongTypeModule.java b/src/main/java/com/pearadmin/common/configure/JavaLongTypeModule.java new file mode 100644 index 0000000000000000000000000000000000000000..aba4745c15af98572f77663df9d07bf733269ee2 --- /dev/null +++ b/src/main/java/com/pearadmin/common/configure/JavaLongTypeModule.java @@ -0,0 +1,15 @@ +package com.pearadmin.common.configure; + +import com.fasterxml.jackson.core.json.PackageVersion; +import com.fasterxml.jackson.databind.module.SimpleModule; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; + + +public class JavaLongTypeModule extends SimpleModule { + public JavaLongTypeModule() { + super(PackageVersion.VERSION); + // 将 Long 转 String + this.addSerializer(Long.TYPE, ToStringSerializer.instance); + this.addSerializer(Long.class, ToStringSerializer.instance); + } +}