商品模块代码提交

This commit is contained in:
谭凯凯 2025-02-11 18:20:05 +08:00 committed by Tankaikai
parent bfd7795fbd
commit 3e478bd1bd
1 changed files with 49 additions and 0 deletions

View File

@ -0,0 +1,49 @@
package com.czg.config;
import com.alibaba.fastjson.serializer.SerializerFeature;
import com.alibaba.fastjson.support.config.FastJsonConfig;
import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.MediaType;
import org.springframework.http.converter.HttpMessageConverter;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;
/**
* fastjson2配置类
*
* @author tankaikai
* @since 2025-02-11 18:14
*/
@Configuration
public class FastJson2Config implements WebMvcConfigurer {
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
// 创建 FastJson 消息转换器
FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter();
// 创建 FastJson 配置
FastJsonConfig fastJsonConfig = new FastJsonConfig();
// 设置日期格式
fastJsonConfig.setDateFormat("yyyy-MM-dd HH:mm:ss");
// 设置序列化特性
// 例如将空集合序列化为 []空字符串序列化为 ""
fastJsonConfig.setSerializerFeatures(
SerializerFeature.WriteNullListAsEmpty,
SerializerFeature.WriteNullStringAsEmpty
);
// 将配置设置到转换器
converter.setFastJsonConfig(fastJsonConfig);
// 设置支持的媒体类型
List<MediaType> mediaTypes = new ArrayList<>();
mediaTypes.add(MediaType.APPLICATION_JSON);
mediaTypes.add(MediaType.APPLICATION_JSON_UTF8);
converter.setSupportedMediaTypes(mediaTypes);
// 设置字符编码
converter.setDefaultCharset(StandardCharsets.UTF_8);
// 将转换器添加到 Spring MVC 的消息转换器列表中
converters.add(0, converter);
}
}