异常信息:com.fasterxml.jackson.databind.JsonMappingException: Conflicting setter definitions for property “is_head”: com.luttica.ess.model.user.UserInfo#setHead(1 params) vs com.luttica.ess.model.user.UserInfo#setHead(1 params)
反序列化注入失败的类:
public class UserInfo{
@JsonProperty("is_head")
private boolean head;
public boolean isHead() {
return head;
}
public void setHead(int head) {
this.head = head == 1;
}
}
因为属性名是“is_head”,但是没有 setIsHead()
方法,所以出现异常。
解决方法:
setHead()
方法名修改为setIsHead()
。问题解决,但是这样的 set 方法命名过于别扭。
public void setIsHead(int head) {
this.head = head == 1;
}
-
@JsonProperty("basic_pay_id")
注解添加到setHead()
方法上即可。@JsonProperty("is_head") public void setHead(int head) { this.head = head == 1; }
成功反序列化,问题解决!
菜鸟本菜,不吝赐教,感激不尽!