zoukankan      html  css  js  c++  java
  • SpringBoot接口返回去掉空字段

    返回的接口中存在值为null或者空的字段过滤掉

    @Configuration
    public class JacksonConfig
    {
        @Bean
        @Primary
        @ConditionalOnMissingBean(ObjectMapper.class)
        public ObjectMapper jacksonObjectMapper(Jackson2ObjectMapperBuilder builder)
        {
            ObjectMapper objectMapper = builder.createXmlMapper(false).build();
    
            // 通过该方法对mapper对象进行设置,所有序列化的对象都将按改规则进行系列化
            // Include.Include.ALWAYS 默认
            // Include.NON_DEFAULT 属性为默认值不序列化
            // Include.NON_EMPTY 属性为 空("") 或者为 NULL 都不序列化,则返回的json是没有这个字段的。这样对移动端会更省流量
            // Include.NON_NULL 属性为NULL 不序列化,就是为null的字段不参加序列化
            objectMapper.setSerializationInclusion(JsonInclude.Include.NON_EMPTY);
    
    //        // 字段保留,将null值转为""
    //        objectMapper.getSerializerProvider().setNullValueSerializer(new JsonSerializer<Object>()
    //        {
    //            @Override
    //            public void serialize(Object o, JsonGenerator jsonGenerator,
    //                                  SerializerProvider serializerProvider)
    //                    throws IOException, JsonProcessingException
    //            {
    //                jsonGenerator.writeString("");
    //            }
    //        });
            return objectMapper;
        }
    }
  • 相关阅读:
    JS函数强化
    Javascript创建对象的方式
    call和apply的区别
    事件绑定和普通事件有什么区别
    又走一个
    风的季节
    关于Dictionary的线程安全问题
    进程管理简述
    开通
    WPF 音乐播放器界面
  • 原文地址:https://www.cnblogs.com/qizhelongdeyang/p/9925107.html
Copyright © 2011-2022 走看看