springboot集成FastJSON

1、引jar

    
      com.alibaba
      fastjson
      1.2.47
    

2、在入口类中加入FastJSON配置(@Bean只能在配置类(@Configrution)中出现)

    @Bean
    public HttpMessageConverters fastjsonHttpMessageConverter(){
//定义一个转换消息的对象
        FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
//添加fastjson的配置信息 比如 :是否要格式化返回的json数据
        FastJsonConfig fastJsonConfig = new FastJsonConfig();
        fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);
//在转换器中添加配置信息
        fastConverter.setFastJsonConfig(fastJsonConfig);
        HttpMessageConverter converter = fastConverter;
        return new HttpMessageConverters(converter);
    }

所以可以不加在入口类中,而加在@Configrution修饰的类中 ,如

@Configrution
public class SpringBootConfig{

     @Bean
    public HttpMessageConverters fastjsonHttpMessageConverter(){
//定义一个转换消息的对象
        FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
//添加fastjson的配置信息 比如 :是否要格式化返回的json数据
        FastJsonConfig fastJsonConfig = new FastJsonConfig();
        fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);
//在转换器中添加配置信息
        fastConverter.setFastJsonConfig(fastJsonConfig);
        HttpMessageConverter converter = fastConverter;
        return new HttpMessageConverters(converter);
    }
}

3、处理日期(时间)问题这里提供两种方式

默认如果不处理,会显示:

springboot集成FastJSON_第1张图片

1)对FastJsonConfig进行修改

结果为:

springboot集成FastJSON_第2张图片

2)对Customer实体类进行修改

这里采用注解形式

结果为:

springboot集成FastJSON_第3张图片

同样,根据需求不同选择不同,第一种是全局,第二种为单独处理。

当然,如果同时写入,FastJsonConfig > @JSONField


4、在实体类的属性上添加@JSONField(serialize=false),则该属性不进行序列化,如果是查询则不会显示该属性

 

 

你可能感兴趣的:(springboot)