接口的json返回格式配置:fastJson

首先引入fastJson的依赖:

<properties>
    <fastjson.version>1.2.15</fastjson.version>
</properties>

<!-- fastjson 数据json格式化工具 -->
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>${fastjson.version}</version>
</dependency>
<!-- fastjson 数据json格式化工具 -->

在项目的web config类加入下列配置:

import com.alibaba.fastjson.serializer.SerializerFeature;
import com.alibaba.fastjson.support.config.FastJsonConfig;
import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter4;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.autoconfigure.http.HttpMessageConverters;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import simple.proj.zxz.play.interceptors.ApiAccessInterceptor;
import simple.proj.zxz.play.prop.CommProp;

/**
 * web配置
 *
 * @author zhangxz
 * 2019/10/25
 */
@Configuration
public class WebConfig implements WebMvcConfigurer {

    @Autowired
    private CommProp commProp;

    @Bean
    public FastJsonConfig fastJsonConfig() {
        FastJsonConfig fastJsonConfig = new FastJsonConfig();

        fastJsonConfig.setSerializerFeatures(
                //输出null值
                SerializerFeature.WriteMapNullValue,
                //数组的null输出为空数组:[]
                SerializerFeature.WriteNullListAsEmpty,
                //禁止json的循环引用
                SerializerFeature.DisableCircularReferenceDetect,

//                SerializerFeature.WriteDateUseDateFormat,
                //字符串的null输出为空字符串:""
                SerializerFeature.WriteNullStringAsEmpty);

        return fastJsonConfig;
    }

    @Bean
    public HttpMessageConverters fastJsonHttpMessageConverters(
            @Qualifier("fastJsonConfig") FastJsonConfig fastJsonConfig) {
        FastJsonHttpMessageConverter4 fastConverter = new FastJsonHttpMessageConverter4();
        fastConverter.setFastJsonConfig(fastJsonConfig);

        return new HttpMessageConverters(fastConverter);
    }

}

猜你喜欢

转载自www.cnblogs.com/zhangxuezhi/p/11812322.html