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 {
@JsonIgnore
private Integer id;
private String name;
private Date birthday;
}
2.2 测试
ObjectMapper mapper = new ObjectMapper();
User user = new User();
user.setId(1);