diff --git a/ruoyi-site/ruoyi-h5/src/main/java/com/luban/api/config/JsonConfig.java b/ruoyi-site/ruoyi-h5/src/main/java/com/luban/api/config/JsonConfig.java deleted file mode 100644 index 925e316d4..000000000 --- a/ruoyi-site/ruoyi-h5/src/main/java/com/luban/api/config/JsonConfig.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.luban.api.config; - -import com.fasterxml.jackson.databind.ObjectMapper; -import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; -import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateSerializer; -import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer; -import com.fasterxml.jackson.datatype.jsr310.ser.LocalTimeSerializer; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; - -import java.time.LocalDate; -import java.time.LocalDateTime; -import java.time.LocalTime; -import java.time.format.DateTimeFormatter; - -/** - * JSON 配置,修改默认 时间序列化格式 - * - * @author WeiHongBin - */ -@Configuration -public class JsonConfig { - @Bean - public ObjectMapper mapperObject() { - JavaTimeModule timeModule = new JavaTimeModule(); - timeModule.addSerializer(LocalDateTime.class, new LocalDateTimeSerializer(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); - timeModule.addSerializer(LocalDate.class, new LocalDateSerializer(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); - timeModule.addSerializer(LocalTime.class, new LocalTimeSerializer(DateTimeFormatter.ofPattern("HH:mm:ss"))); - - ObjectMapper mapper = new ObjectMapper(); - mapper.registerModule(timeModule); - return mapper; - } - -} \ No newline at end of file diff --git a/ruoyi-site/ruoyi-h5/src/main/java/com/luban/api/config/WebMvcConfig.java b/ruoyi-site/ruoyi-h5/src/main/java/com/luban/api/config/WebMvcConfig.java index b6027100d..e9d960136 100644 --- a/ruoyi-site/ruoyi-h5/src/main/java/com/luban/api/config/WebMvcConfig.java +++ b/ruoyi-site/ruoyi-h5/src/main/java/com/luban/api/config/WebMvcConfig.java @@ -1,16 +1,37 @@ package com.luban.api.config; +import com.fasterxml.jackson.databind.ObjectMapper; import com.luban.api.s3.config.S3LoginUserInterceptor; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +import org.springframework.http.converter.HttpMessageConverter; +import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; import org.springframework.web.cors.CorsConfiguration; import org.springframework.web.cors.UrlBasedCorsConfigurationSource; import org.springframework.web.filter.CorsFilter; import org.springframework.web.servlet.config.annotation.*; +import java.util.List; + @Configuration @EnableWebMvc public class WebMvcConfig implements WebMvcConfigurer { + + @Autowired + private ObjectMapper objectMapper; + + /** + * 配置消息转换器,使用自定义的 ObjectMapper + */ + @Override + public void configureMessageConverters(List> converters) { + // 添加 MappingJackson2HttpMessageConverter,使用注入的 ObjectMapper + MappingJackson2HttpMessageConverter jackson2HttpMessageConverter = + new MappingJackson2HttpMessageConverter(objectMapper); + converters.add(jackson2HttpMessageConverter); + } + @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { //兼容swagger老版本v1,v2 diff --git a/ruoyi-site/ruoyi-h5/src/main/resources/application.yml b/ruoyi-site/ruoyi-h5/src/main/resources/application.yml index 6610272c5..1ea81bebf 100644 --- a/ruoyi-site/ruoyi-h5/src/main/resources/application.yml +++ b/ruoyi-site/ruoyi-h5/src/main/resources/application.yml @@ -19,6 +19,18 @@ spring: servlet: multipart: max-file-size: 10MB + jackson: + # 日期格式化 + date-format: yyyy-MM-dd HH:mm:ss + serialization: + # 格式化输出 + indent_output: false + # 忽略无法转换的对象 + fail_on_empty_beans: false + deserialization: + # 允许对象忽略json中不存在的属性 + fail_on_unknown_properties: false + springdoc: info: