java—使用resttemplate检索和反序列化复杂对象的json

8yoxcaq7  于 2021-07-24  发布在  Java
关注(0)|答案(0)|浏览(214)

我使用rest模板使用restapi

public CoinResponse getExchange(){
        List<HttpMessageConverter<?>> messageConverters = new ArrayList<>();
        MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
        converter.setSupportedMediaTypes(Collections.singletonList(MediaType.ALL));
        messageConverters.add(converter);
        restTemplate.setMessageConverters(messageConverters);
       return restTemplate.getForObject("https://api.coindesk.com/v1/bpi/currentprice.json", CoinResponse.class);
    }

我得到的React是coinresponse的一个例子。在coinresponse中,我可以访问bpiobject示例,但是eur、usd和gbp示例都是空的。我的模型是这样的:

public class CoinResponse {
    public CoinResponse() {
    }

    @JsonProperty
    Time TimeObject;
    @JsonProperty
    private String disclaimer;
    @JsonProperty
    private String chartName;
    @JsonProperty
    Bpi BpiObject;
    // Getters and Setters
}
public class Bpi {
    public Bpi() {
    }

    @JsonProperty
    USD USDObject;
    @JsonProperty
    GBP GBPObject;
    @JsonProperty
    EUR EURObject;
    // Getter and Setters


我做错什么了?用restemplate解决这个问题的正确方法是什么?
我的货币类如下所示:

public class EUR {
    public EUR() {
    }

    @JsonProperty
    private String code;
    @JsonProperty
    private String symbol;
    @JsonProperty
    private String rate;
    @JsonProperty
    private String description;
    @JsonProperty
    private float rate_float;
    // Getter and Setters
}

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题