美文网首页
spring boot 2 修改默认json 插件

spring boot 2 修改默认json 插件

作者: cifer_pan | 来源:发表于2018-11-22 18:19 被阅读0次

    1. 默认的Springboot json序列化时含有含有很多的null,所有该用 阿里 fastjson;

    @Component
    public class WebMvcConf implements WebMvcConfigurer {
        @Bean
        public HttpMessageConverters fastJsonHttpMessageConverters() {
            // 1.定义一个converters转换消息的对象
            FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
            // 2.添加fastjson的配置信息,比如: 是否需要格式化返回的json数据
            FastJsonConfig fastJsonConfig = new FastJsonConfig();
            fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);
            // 3.在converter中添加配置信息
            fastConverter.setFastJsonConfig(fastJsonConfig);
            // 4.将converter赋值给HttpMessageConverter
            HttpMessageConverter<?> converter = fastConverter;
            // 5.返回HttpMessageConverters对象
            return new HttpMessageConverters(converter);
        }
    }
    

    2. 阿里 fastJosn 的序列化属性 具有多种方式;

    
    String str = JSONObject.toJSONString(jsonMap,SerializerFeature.WriteMapNullValue);  
    JSONObject.toJSONString(Object object, SerializerFeature... features);
    QuoteFieldNames———-输出key时是否使用双引号,默认为true 
    WriteMapNullValue——–是否输出值为null的字段,默认为false 
    WriteNullNumberAsZero—-数值字段如果为null,输出为0,而非null 
    WriteNullListAsEmpty—–List字段如果为null,输出为[],而非null 
    WriteNullStringAsEmpty—字符类型字段如果为null,输出为”“,而非null 
    WriteNullBooleanAsFalse–Boolean字段如果为null,输出为false,而非null
    
    
    

    相关文章

      网友评论

          本文标题:spring boot 2 修改默认json 插件

          本文链接:https://www.haomeiwen.com/subject/dqcrqqtx.html