后端给前端传参数忽略空属性

@JsonInclude

@JsonInclude注解用于指定在对象序列化为JSON字符串时,哪些属性应该被包含进去,哪些属性应该被忽略掉。

@JsonInclude注解有以下几个常用选项:

  1. @JsonInclude(JsonInclude.Include.NON_NULL):表示只有属性值不为null的属性才会被包含进去。属性值为null的属性将被忽略。

  2. @JsonInclude(JsonInclude.Include.NON_EMPTY):表示只有属性值不为空的属性才会被包含进去。属性值为空字符串("")或空集合([])等情况的属性将被忽略。

  3. @JsonInclude(JsonInclude.Include.ALWAYS):表示所有属性都会被包含进去,即使属性值为null或为空。

  4. @JsonInclude(JsonInclude.Include.NON_DEFAULT):表示只有属性值与默认值不相等的属性才会被包含进去。默认值根据属性类型的默认值而定。

示例代码如下:

复制代码
@JsonInclude(JsonInclude.Include.NON_NULL)
public class MyClass {
    private String name;
    private Integer age;
    private List<String> hobbies;
 
    // getters and setters
}

上述代码表示在将MyClass对象序列化为JSON字符串时,只有name、age和hobbies属性的值不为null时才会被包含进去。

相关推荐
爬山算法15 分钟前
Hibernate(87)如何在安全测试中使用Hibernate?
java·后端·hibernate
云姜.27 分钟前
线程和进程的关系
java·linux·jvm
是码龙不是码农29 分钟前
支付防重复下单|5 种幂等性设计方案(从初级到架构级)
java·架构·幂等性
曹牧29 分钟前
Spring Boot:如何在Java Controller中处理POST请求?
java·开发语言
heartbeat..29 分钟前
JVM 性能调优流程实战:从开发规范到生产应急排查
java·运维·jvm·性能优化·设计规范
WeiXiao_Hyy33 分钟前
成为 Top 1% 的工程师
java·开发语言·javascript·经验分享·后端
苏渡苇39 分钟前
优雅应对异常,从“try-catch堆砌”到“设计驱动”
java·后端·设计模式·学习方法·责任链模式
团子的二进制世界1 小时前
G1垃圾收集器是如何工作的?
java·jvm·算法
long3161 小时前
Aho-Corasick 模式搜索算法
java·数据结构·spring boot·后端·算法·排序算法
rannn_1111 小时前
【苍穹外卖|Day4】套餐页面开发(新增套餐、分页查询、删除套餐、修改套餐、起售停售)
java·spring boot·后端·学习