1-1、Spring Boot使用fastjson解析JSON数据

一、引入fastjson依赖库。

   com.alibaba
   fastjson
   1.2.31

网上看到说官方文档说的1.2.10以后,会有两个方法支持HttpMessageconvert,一个是FastJsonHttpMessageConverter,支持4.2以下的版本,一个是FastJsonHttpMessageConverter4支持4.2以上的版本。

二、配置fastjon。
1、方法1。启动类继承extends WebMvcConfigurerAdapter,并重写configureMessageConverters()方法。
// 配置fastJson  用于替代jackson
@Override
public void configureMessageConverters(List> converters) {
    super.configureMessageConverters(converters);
    //定义一个convert 转换消息的对象
    FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
    // 2 添加fastjson 的配置信息 比如 是否要格式化 返回的json数据
    FastJsonConfig fastJsonConfig = new FastJsonConfig();
    fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);
    fastConverter.setFastJsonConfig(fastJsonConfig);
    // 解决乱码的问题
    List fastMediaTypes = new ArrayList<>();
    fastMediaTypes.add(MediaType.APPLICATION_JSON_UTF8);
    fastConverter.setSupportedMediaTypes(fastMediaTypes);
    converters.add(fastConverter);
}
2、方法2。在启动类中,注入Bean : HttpMessageConverters。
@Bean
public HttpMessageConverters fastJsonHttpMessageConverters() {
    // 1 定义一个convert 转换消息的对象
    FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
    // 2 添加fastjson 的配置信息 比如 是否要格式化 返回的json数据
    FastJsonConfig fastJsonConfig = new FastJsonConfig();
    fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);
    fastConverter.setFastJsonConfig(fastJsonConfig);
    // 解决乱码的问题
    List fastMediaTypes = new ArrayList<>();
    fastMediaTypes.add(MediaType.APPLICATION_JSON_UTF8);
    fastConverter.setSupportedMediaTypes(fastMediaTypes);

    HttpMessageConverter converter = fastConverter;
    return new HttpMessageConverters(converter);
}

你可能感兴趣的:(1-1、Spring Boot使用fastjson解析JSON数据)