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