我有两个问题:
- 如何使用 Spring RestTemplate 映射 JSON 对象列表。
- 如何映射嵌套的 JSON 对象。
我正在尝试按照 http://spring.io/guides/gs/consuming-rest/ 中的教程使用 https://bitpay.com/api/rates 。
原文由 Karudi 发布,翻译遵循 CC BY-SA 4.0 许可协议
我有两个问题:
我正在尝试按照 http://spring.io/guides/gs/consuming-rest/ 中的教程使用 https://bitpay.com/api/rates 。
原文由 Karudi 发布,翻译遵循 CC BY-SA 4.0 许可协议
首先定义一个对象来保存数组中返回的实体.. 例如
@JsonIgnoreProperties(ignoreUnknown = true)
public class Rate {
private String name;
private String code;
private Double rate;
// add getters and setters
}
然后您可以使用该服务并通过以下方式获取强类型列表:
ResponseEntity<List<Rate>> rateResponse =
restTemplate.exchange("https://bitpay.com/api/rates",
HttpMethod.GET, null, new ParameterizedTypeReference<List<Rate>>() {
});
List<Rate> rates = rateResponse.getBody();
上面的其他解决方案也可以工作,但我喜欢返回强类型列表而不是 Object[]。
原文由 Matt 发布,翻译遵循 CC BY-SA 3.0 许可协议
15 回答8.4k 阅读
8 回答6.2k 阅读
1 回答4k 阅读✓ 已解决
3 回答6k 阅读
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
也许这样…
控制器代码
RequestMapping
ResponseEntity
是HttpEntity
的扩展,添加了HttpStatus
状态代码。用于RestTemplate
以及@Controller
方法。在RestTemplate
中,此类由getForEntity()
和exchange()
返回。