【发布时间】:2021-01-08 04:56:44
【问题描述】:
我有一个名为 Customer 的类
Customer{
private int ID;
private IDCard idCard;
}
和IDCard.Java
IDCard{
private int id;
private int score;
}
我有两个端点,端点01 和端点02。 因此,当我使用 endpoint01 添加客户时,必须提供分数。但是当我使用 endpoint02 添加客户时,分数不是强制性的。
当我在两个端点的控制器方法中使用相同的客户模型时,Jackson 会抛出错误,因为在端点02 我没有提供分数。 在这种情况下,很明显我不能在我的 IDCard 模型中应用 json ignore。那么如何告诉我的endpoint02 忽略 score 字段,如果它不存在,并且只有当 json 对象中存在该字段时才反序列化。
这是我的端点02
@RequestMapping(method=RequestMethod.POST, value="/add",headers="Accept=application/json")
public @ResponseBody Map<String,List<String>> add(@RequestBody Customer customer) {
return customerSvc.add(customer);
}
【问题讨论】:
标签: java spring-boot spring-mvc jackson