十一、Spring Boot完美使用FastJson解析JSON数据

  Spring Boot集成了Jackson框架来处理JSON数据,但目前FastJson框架是处理JSON数据最高效的框架,如何替换Jackson框架,步骤如下:

(一)添加依赖

<!--spring boot默认的json工具是jackson,因为fastjson更快,所以这里需要替换成fastjson-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.28</version>
        </dependency>

(二)在应用程序启动类中,添加如下代码:

/**
 * @SpringBootApplicatio: 指定这是一个Spring boot应用程序
 */
@SpringBootApplication
public class SbHelloApplication {

    public static void main(String[] args) {
        //在main方法中启动应用程序
        SpringApplication.run(SbHelloApplication.class, args);
    }

    /**
     * 使用@Bean注解注入第三方的解析框架(fastJson)
     */
    @Bean
    public HttpMessageConverters fastJsonHttpMessageConverters(){
        //1、首先需要先定义一个convert转换消息对象
        FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
        //2、添加fastJson的配置信息,比如:是否要格式化返回的json数据
        FastJsonConfig fastJsonConfig = new FastJsonConfig();
        fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);
        //3、在convert中添加配置信息
        fastConverter.setFastJsonConfig(fastJsonConfig);

        return new HttpMessageConverters(fastConverter);
    }
}

(三)使用

public class User {
    private Integer id;
    private String username;
    private Integer age;
    /**
     * fastJson特性:格式化
     */
    @JSONField(format = "yyyy-MM-dd HH:mm")
    private Date createTime;
    /**
     * 不输出该成员变量,相当于Jackson的@JsonInclude注解
     * serialize:是否需要序列化
     */
    @JSONField(serialize = false)
    private String remark;
}

猜你喜欢

转载自blog.csdn.net/panchang199266/article/details/82667947