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

相關文章
相關標籤/搜索