[英]Setter issue while converting JSON to Java Object
我正在尝试使用com.fasterxml.jackson.core将以下简单JSON转换为Java Object。 我对bonusAmount字段设置器方法有疑问。
JSON:
{"amount":332.5, "bonusamount":3, "action":"Spend"}
Java类:
@JsonIgnoreProperties(ignoreUnknown = true)
public class GameRequest {
@JsonProperty("amount")
private BigDecimal amount;
@JsonProperty("bonusamount")
private BigDecimal bonusAmount;
@JsonProperty("action")
private String action;
.....
public BigDecimal getBonusAmount() {
return bonusAmount;
}
public void setBonusAmount(BigDecimal bonusAmount) {
this.bonusAmount = bonusAmount;
}
当我尝试使用它时,bonusAmount字段的值为NULL,但是如果我将setter方法的名称从setBonusAmount更改为setBonusamount,那么它将起作用。 有人可以告诉我为什么吗?
那是因为您已使用@JsonProperty("bonusamount")
重命名了字段,这意味着Jackson搜索了一个名为setBonusamount
的方法(第一个字符为toUpperCase,其余保持不变)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.