Jackson是一个用于Java的库,它具有非常强大的数据绑定能力,并提供了一个框架,可以将自定义的Java对象序列化为JSON,并将JSON反序列化回Java对象。Jackson库提供了@JsonInclude注解,它可以根据值在序列化期间控制整个类或其各个字段的序列化。
@JsonInclude注解包含以下两个值
示例
import com.fasterxml.jackson.annotation.*; import com.fasterxml.jackson.annotation.JsonInclude.Include; import com.fasterxml.jackson.core.*; import com.fasterxml.jackson.databind.*; public class IgnoreNullAndEmptyFieldTest { public static void main(String[] args) throws JsonProcessingException { ObjectMapper mapper = new ObjectMapper(); mapper.enable(SerializationFeature.INDENT_OUTPUT); Employee employee = new Employee(115, null, ""); // passing null and empty fields String result = mapper.writeValueAsstring(employee); System.out.println(result); } } // Employee class class Employee { private int id; @JsonInclude(Include.NON_NULL) private String firstName; @JsonInclude(Include.NON_EMPTY) private String lastName; public Employee(int id, String firstName, String lastName) { super(); this.id = id; this.firstName = firstName; this.lastName = lastName; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getFirstName() { return firstName; } public void setFirstName(String firstName) { this.firstName = firstName; } public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } }
输出
{ "id" : 115 }
以上就是如何使用Java中的Jackson库忽略空和空字段?的详细内容,更多请关注编程之家其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。