我必须调用第三方API以获取货币汇率,但是返回的JSON一直在变化,如果我请求将MYR
转换为USD
,它将返回我:{"MYR_USD":0.246731}
,因此,如果我要求KRW
至USD
,它将返回我{"KRW_USD":0.000888}
。
我将不得不使用@JsonProperty
将返回的结果映射到pojo中,是否有任何可行的方法?
我当前的硬编码解决方法:
@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;
}
}
答案 0 :(得分:1)
{"A":5}
是一个对象,其字段A
的值为5
。
没有{"A":5}
是键/值对为Map
的{{1}}。
两者都是正确的,但是由于A=5
之前的值是动态的(变化的),因此它是您需要的第二种解释。
所以不要要求将JSON转换为POJO(:
)。
要求将其转换为FreeCurrencyExchangeRate
,然后迭代该地图。