gpt4 book ai didi

java - 将 JSON 转换为 Java 对象时的 Setter 问题

转载 作者:行者123 更新时间:2023-12-02 11:02:16 25 4
gpt4 key购买 nike

我正在尝试使用 com.fasterxml.jackson.core 将下面的简单 JSON 转换为 Java 对象。我对 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 的方法(第一个字符为大写,其余字符保留为相同)

关于java - 将 JSON 转换为 Java 对象时的 Setter 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51241326/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com