Spring默认的json使用起来不习惯,所有推荐大家使用fastJson来解析,
话不多说直接上代码:
首先引入依赖
最好是最新版本
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.15</version>
</dependency>
配置fastJson有两种方法:
第一种:
1.启动类继承extends WebMvcConfigureAdapter
2.覆盖方法configureMessageConvertters
1.
@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);
}
}
2.
@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);
}
补充:
使用fastJson可以格式化时间:
//com.alibaba.fastjson.annotation.JSONField
@JSONField(format=”yyyy-MM-dd HH:mm”)
private Date createTime;