如何让Jackson在序列化为JSON时忽略null字段?
大家好!我刚开始学习使用Jackson处理Java中的JSON,遇到了一个问题。我有一个User类,包含几个字段,其中一些可能为null。当我将对象序列化为JSON时,Jackson默认会包含这些null字段,导致输出杂乱。例如:
public class User {
private String name;
private String email;
private String phone;
// getters and setters
}
User user = new User();
user.setName("伊万");
// email和phone未设置,它们为null
ObjectMapper mapper = new ObjectMapper();
String json = mapper.writeValueAsString(user);
// 结果:{"name":"伊万","email":null,"phone":null}
我需要让值为null的字段不包含在JSON中。我希望得到类似这样的结果:{"name":"伊万"}。请问如何实现?我听说过注解,但不知道具体该用哪一个。提前感谢!