From a427a998e42c30817da54fd8ae9dc1a1f7072f5f Mon Sep 17 00:00:00 2001 From: zhuo <2089219845@qq.com> Date: 星期一, 03 三月 2025 10:27:30 +0800 Subject: [PATCH] 修改设备问题 --- ruoyi-framework/src/main/java/com/ruoyi/framework/config/ResourcesConfig.java | 39 +++++++++++++++++++++++++++++++++++++++ 1 files changed, 39 insertions(+), 0 deletions(-) diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ResourcesConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ResourcesConfig.java index fb42e5f..d6e6f9e 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ResourcesConfig.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ResourcesConfig.java @@ -1,12 +1,25 @@ package com.ruoyi.framework.config; +import java.text.SimpleDateFormat; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; +import java.util.List; import java.util.concurrent.TimeUnit; +import com.fasterxml.jackson.databind.DeserializationFeature; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.SerializationFeature; +import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; +import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer; +import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.http.CacheControl; +import org.springframework.http.converter.HttpMessageConverter; +import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder; +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; @@ -82,4 +95,30 @@ // 杩斿洖鏂扮殑CorsFilter return new CorsFilter(source); } + + // 鍏ㄥ眬鏍煎紡鍖栧鐞� + @Override + public void extendMessageConverters(List<HttpMessageConverter<?>> converters) { + String dateFormat = "yyyy-MM-dd HH:mm:ss"; + + Jackson2ObjectMapperBuilder json = Jackson2ObjectMapperBuilder.json(); + MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter(); + + //localDateTime鏍煎紡鍖� + JavaTimeModule module = new JavaTimeModule(); + LocalDateTimeDeserializer dateTimeDeserializer = new LocalDateTimeDeserializer(DateTimeFormatter.ofPattern(dateFormat)); + LocalDateTimeSerializer dateTimeSerializer = new LocalDateTimeSerializer(DateTimeFormatter.ofPattern(dateFormat)); + module.addDeserializer(LocalDateTime.class, dateTimeDeserializer); + module.addSerializer(LocalDateTime.class, dateTimeSerializer); + ObjectMapper objectMapper = json.modules(module) + .featuresToDisable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS).build(); + + //date鏃堕棿鏍煎紡鍖� + objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); + objectMapper.setDateFormat(new SimpleDateFormat(dateFormat.split(" ")[0])); + + // 璁剧疆鏍煎紡鍖栧唴瀹� + converter.setObjectMapper(objectMapper); + converters.add(0, converter); + } } -- Gitblit v1.9.3