使用FastJson解析JSON数据

spring boot默认的json使用起来比较不习惯,所以很自然我就想我能不能使用fastjson进行json解析呢?
 
 
引入fastjson依赖库
<dependency>
  <groupId>com.alibaba</groupId>
  <artifactId>fastjson</artifactId>
  <version>1.2.15</version>
</dependency>
这里要说下很重要的话,官方文档说的1.2.10以后,会有两个方法支持HttpMessageconvert,一个是FastJsonHttpMessageConverter,支持4.2以下的版本,一个是FastJsonHttpMessageConverter4支持4.2以上的版本,具体有什么区别暂时没有深入研究。这里也就是说:低版本的就不支持了,所以这里最低要求就是1.2.10+
 
配置fastjon(支持两种方法)
第一种方法就是:
(1)启动类继承extends WebMvcConfigurerAdapter
(2)覆盖方法configureMessageConverters
 
第一种方式代码
•@SpringBootApplication
public class ApiCoreApp  extends WebMvcConfigurerAdapter {
• 
•  @Override
•  public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
•      super.configureMessageConverters(converters);
• 
•        FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
• 
•        FastJsonConfig fastJsonConfig = new FastJsonConfig();
•        fastJsonConfig.setSerializerFeatures(
•                SerializerFeature.PrettyFormat
•        );
•        fastConverter.setFastJsonConfig(fastJsonConfig);
• 
•      converters.add(fastConverter);
•  }
•}
 
第二种方法
(1)在App.java启动类中,
注入Bean : HttpMessageConverters
 
第二种方式代码
@Bean
  public HttpMessageConverters fastJsonHttpMessageConverters() {
  FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
  FastJsonConfig fastJsonConfig = new FastJsonConfig();
  fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);
  fastConverter.setFastJsonConfig(fastJsonConfig);
  HttpMessageConverter<?> converter = fastConverter;
  return new HttpMessageConverters(converter);
  }
posted @ 2020-10-09 11:32  杨斌_济南  阅读(597)  评论(0编辑  收藏  举报