Spring Boot 中 RestController 返回的字符串默認使用 Jackson 引擎,它也提供了工廠類,我們可以自定義 JSON 引擎,本節實例我們將 JSON 引擎替換為 fastJSON,首先需要引入 fastJSON:
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>${fastjson.version}</version>
</dependency>
其次,在 WebConfig 類重寫 configureMessageConverters 方法:
@Override public void configureMessageConverters(List<HttpMessageConverter<?>> converters) { super.configureMessageConverters(converters); /* 1.需要先定義一個 convert 轉換消息的對象; 2.添加 fastjson 的配置信息,比如是否要格式化返回的 JSON 數據 3.在 convert 中添加配置信息 4.將 convert 添加到 converters 中 */ //1.定義一個 convert 轉換消息對象 FastJsonHttpMessageConverter fastConverter=new FastJsonHttpMessageConverter(); //2.添加 fastjson 的配置信息,比如是否要格式化返回 JSON 數據 FastJsonConfig fastJsonConfig=new FastJsonConfig(); fastJsonConfig.setSerializerFeatures( SerializerFeature.PrettyFormat ); fastConverter.setFastJsonConfig(fastJsonConfig); converters.add(fastConverter); }