我有带有 boolean (isBlocked)参数的 JSON 响应
{"isBlocked":true,"responseId":"ab123456789", "other":"irrelevant"}
我的 ResponseVO(使用 Eclipse 自动生成 getter 和 setter):
@JsonIgnoreProperties(ignoreUnknown = true)
public class ResponseVO {
private boolean isBlocked;
private String responseId;
public boolean isBlocked() {
return isBlocked;
}
public void setBlocked(boolean isBlocked) {
this.isBlocked = isBlocked;
}
public String getResponseId() {
return responseId;
}
public void setResponseId(String responseId) {
this.responseId = responseId;
}
}
我使用ObjectMapper
来设置VO对象
ResponseVO responseVO = new ObjectMapper().readValue(response, ResponseVO.class);
但是 boolean 参数设置为 false 而不是 true
logger.debug("SpelPaus Block=" + responseVO.isBlocked());
最佳答案
将私有(private)属性重命名为private booleanblocked;
setter-getter 为
public boolean isBlocked()
{return blocked;}
public void setBlocked(boolean blocked)
{this.blocked = blocked;}
关于java - 使用默认 ObjectMapper 后 boolean JSON 参数为 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53593559/