@JsonInclude(Include.NON_NULL)

Posted xuzhankun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了@JsonInclude(Include.NON_NULL)相关的知识,希望对你有一定的参考价值。

  前端的同事要求说尽量不要有null,可有为空串“” 或者 0 或者 [], 但尽量不要null。

  所以@JsonInclude(Include.NON_NULL) 这个注解放在类头上就可以解决。 实体类与json互转的时候 属性值为null的不参与序列化

  

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;

@JsonInclude(Include.NON_NULL)
public class WithdrawDetail implements Serializable {

}

或者

WithdrawDetail wd = new WithdrawDetail();

wd.setSerializationInclusion(Include.NON_NULL);

 

  实际效果

 

 

全局配置

springMVC.xml

<!-- 默认的注解映射的支持 比如requestMapper之类的 -->
<mvc:annotation-driven>
<mvc:message-converters>
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
<property name="objectMapper">
<bean class="com.fasterxml.jackson.databind.ObjectMapper">
<property name="serializationInclusion">
<value type="com.fasterxml.jackson.annotation.JsonInclude.Include">NON_NULL</value>
</property>
</bean>
</property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>

 

--------------spring boot 的配置

只在配置文件加上一个配置

spring.jackson.default-property-inclusion=non_null

 

以上是关于@JsonInclude(Include.NON_NULL)的主要内容,如果未能解决你的问题,请参考以下文章

@JsonInclude(Include.NON_NULL)

@JsonInclude(Include.NON_NULL)

@JsonInclude(Include.NON_NULL) 如何在 Spring Boot 中工作

@JsonInclude(Include.NON_NULL)

jsoninclude.include.non_null 不起作用问题

jsoninclude.include.non_null 不起作用问题