springmvc中Controller返回json时不处理空值的方法

Posted mp-ui

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springmvc中Controller返回json时不处理空值的方法相关的知识,希望对你有一定的参考价值。

如图,这是我的实体类
在这里插入图片描述
当alias为空时,Controller返回给前端的值也是null
在这里插入图片描述
我希望的是当一个值为null时,就不要处理这个属性了,不要返回给前端一个null值

下面是解决方法:

1. 给实体类加上@Include注解

@JsonInclude(JsonInclude.Include.NON_NULL)

在这里插入图片描述
可以看到返回给前端的就不再有null值了
在这里插入图片描述

2. 配置springmvc.xml

在springmvc.xml中配置以下内容

    <mvc:annotation-driven>
        <mvc:message-converters register-defaults="true">
            <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>

在这里插入图片描述
我也不知道那个Include为什么会报红,但是实测能用。

以上是关于springmvc中Controller返回json时不处理空值的方法的主要内容,如果未能解决你的问题,请参考以下文章

SpringMVC中controller返回json数据的两种方法

springmvc Controller详解

利用SpringMVC拦截器控制Controller返回值

SpringMVC Controller 返回值的可选类型

springmvc中Controller返回json时不处理空值的方法

SpringMVC框架,controller层返回页面不能访问静态资源的问题。