1.简介
jackson中如果不做特殊处理,反序列化时如果遇到未知属性,会报错
有时序列化/反序列化时想要忽略一些属性,比如忽略用户密码,因为敏感数据不适宜序列化
有时反序列化时想要忽略所有未知属性,jackson提供了两个注解:
- JsonIgnore:注解在属性上,代表序列化反序列化时忽略指定属性
- JsonIgnoreProperties:注解在类上,代表序列化反序列化时忽略指定属性,也可以忽略所有未知属性
2.JsonIgnore
2.1 实体
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;import java.util.Date;@Data
public class User {@JsonIgnoreprivate Integer id;private String name;private Date birthday;}
2.2 测试
ObjectMapper mapper = new ObjectMapper();User user = new User();user.setId(1);user.setName("lisi");user.setBirthday(new Date());String result =