解决@JsonInclude(JsonInclude.Include.NON_NULL)不起作用问题
作者:manonglanye
这篇文章主要介绍了解决@JsonInclude(JsonInclude.Include.NON_NULL)不起作用问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
@JsonInclude(JsonInclude.Include.NON_NULL)不起作用
记录一下使用@JsonInclude(JsonInclude.Include.NON_NULL)不起作用的原因。
我想要的结果是如果只给code赋值,其他属性不赋值,那么我调用接口返回的结果里面只有code。但是遇到其他属性也存在着的情况(为null)。
原因
我在controller层使用了一个抽象controller类,该类里的A方法会把Object类对象转换成JSON对象,就是这个A方法的原因,把A去掉就可以了,直接返回ReturnResult对象。
@JsonInclude(JsonInclude.Include.NON_NULL)注解
用法含义
为null的字段不序列化
看示例
@JsonInclude(JsonInclude.Include.NON_NULL) public class Response { private String name; private String targetId; private String characteristic; }
假设这个Response类是返回给前端的响应。如果字段characteristic为null,加上该注解后前端拿到的响应格式应该是这个样子(为null的characteristic字段不会显示在序列化结果里):
{ "name": "xxx", "targetId": "xxx" }
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。