springBoot输出json格式

springBoot以配置文件来简化开发性,使开发者更关注于开发,可是有些内容须要额外进行配置。java

例如须要对输出的内容进行JSON格式化。经过代码对输出信息进行内容的格式转化。spring

@Configuration
public class WebApplicationConfig extends WebMvcConfigurerAdapter {

	
	@Override
    public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
        super.configureMessageConverters(converters);
        //1.须要定义一个convert转换消息的对象;
        FastJsonHttpMessageConverter fastJsonHttpMessageConverter = new FastJsonHttpMessageConverter();
        //2.添加fastJson的配置信息,好比:是否要格式化返回的json数据;
        FastJsonConfig fastJsonConfig = new FastJsonConfig();
        fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat,
        		                      SerializerFeature.WriteMapNullValue,
        		                      SerializerFeature.WriteNullStringAsEmpty,
        		                      SerializerFeature.DisableCircularReferenceDetect,
        		                      SerializerFeature.WriteNullListAsEmpty);
        //3处理中文乱码问题
        List<MediaType> fastMediaTypes = new ArrayList<>();
        fastMediaTypes.add(MediaType.APPLICATION_JSON_UTF8);
        //4.在convert中添加配置信息.
        fastJsonHttpMessageConverter.setSupportedMediaTypes(fastMediaTypes);
        fastJsonHttpMessageConverter.setFastJsonConfig(fastJsonConfig);
        //5.将convert添加到converters当中.
        converters.add(fastJsonHttpMessageConverter);
    }
	
}

由于json转化后会对null的属性字段自动过滤,因此须要对json字符串进行配置,代码中中间模块就是对输出格式及内容进行了一次转化,对于null的数据支持输出json

相关文章
相关标签/搜索