在SpringBoot 中启用Fastjson转换

默认springboot中,当前端传过来数据,转换为JSON时,默认使用的是框架自带的jackson,当我们想要使用alibaba的fastjson时,可以做如下配置。

引入依赖

  1. 先在pom.xml中引入相关依赖
<!--alibaba json-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.36</version>
        </dependency>

配置

两种方式

  1. bean注入HttpMessageConverters:
/*
    * 启用fastjson 的转换
    * */
    @Bean
    public HttpMessageConverters fastJsonHttpMessageConverters() {
        FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
        FastJsonConfig fastJsonConfig = new FastJsonConfig();
        fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);
        fastConverter.setFastJsonConfig(fastJsonConfig);
        return new HttpMessageConverters(fastConverter);
    }

2.继承WebMvcConfigurerAdapter,重写configureMessageConverters方法

@Configuration
public class WebMvcConfigurer  extends WebMvcConfigurerAdapter {
    @Override
    public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
        FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter();
        //自定义配置...
        FastJsonConfig fastJsonConfig = new FastJsonConfig();
  fastJsonConfig.setDateFormat("yyyy-MM-dd HH:mm:ss");    // 自定义时间格式
        fastJsonConfig.setSerializerFeatures(
                //配置美观的输出格式
                SerializerFeature.PrettyFormat,
                //配置输出空值
                SerializerFeature.WriteMapNullValue,
                //将字符串类型字段的空值输出为空字符串 ""
                SerializerFeature.WriteNullStringAsEmpty);
        converter.setFastJsonConfig(fastJsonConfig);
        converters.add(converter);
    }
}

不序列化某个字段

比如我们把user表的数据取出来给前台,密码的字段肯定是不能显示的,这样我们可以配置,让某个字段不序列化

@JSONField(serialize=false) 
private String pwd;

这样,就可以启用fasjson作为默认的转换器了

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 47,338评论 6 342
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 137,063评论 19 139
  • 这个周末比平时工作日还忙,也没顾及到应该顾及的事情,不要生气啊……下面的话送给你,共勉: 人都会孤独,但唯独他,可...
    何时再出发阅读 258评论 3 0
  • 经受不住一缕轻风, 半空中一闪, 便葬送了 这柳丝偶现。 我的思绪也这般轻盈, 半点言语的波动, 便教我思绪的生命...
    滚滚红尘123阅读 233评论 1 4

友情链接更多精彩内容