一尘不染

Java Jackson注释用于更改字段

java

我要呼吁汇率第三方API,但JSON返回不断变化,如果我申请MYRUSD的转换,它将返回我:{"MYR_USD":0.246731},所以如果我的要求KRWUSD,它将返回我{"KRW_USD":0.000888}

我将不得不使用将返回的结果映射到pojo中@JsonProperty,是否有任何可行的方法?

我当前的硬编码解决方法:

@JsonIgnoreProperties(ignoreUnknown = true)
public class FreeCurrencyExchangeRate {

    @JsonProperty("MYR_USD")
    private double rate;

    public double getRate() {
        return rate;
    }

    public void setRate(double rate) {
        this.rate = rate;
    }
}

阅读 242

收藏
2020-12-03

共1个答案

一尘不染

{"A":5}A具有值的字段的对象5
{"A":5}Mapwith键/值对A=5

两者都是正确的,但是由于before的值:是动态的(变化的),因此它是您需要的第二种解释。

因此,请勿要求将JSON转换为POJO(FreeCurrencyExchangeRate)。
要求将其转换为Map,然后迭代该地图。

2020-12-03