如何使用Spring RestTemplate从其他对象中获取数组中的JSON对象列表?

时间:2016-11-08 04:07:54

标签: java json spring-boot jackson resttemplate

我试图使用这些数据

  

https://api.nasa.gov/neo/rest/v1/neo/browse?api_key=DEMO_KEY

遵循

的教程
  

http://spring.io/guides/gs/consuming-rest/

我成功检索了"链接"和"页面"部分数据,但near_earth_objects数组为空。

我尝试了这篇文章中的建议:

  

Get list of JSON objects with Spring RestTemplate

但我的情况有点复杂,因为它不仅仅是一个充满物体的阵列,如

所示
  

http://bitpay.com/api/rates

最佳答案给出错误:

Caused by: com.fasterxml.jackson.databind.JsonMappingException: Can not 
deserialize instance of java.lang.Object[] out of START_OBJECT token

这是我的POJO的样子:

@JsonIgnoreProperties(ignoreUnknown = true)
public class NearEarthObjectBrowse {
    @Id
    private Links links;
    private Page page;
    private NearEarthObject[] near_earth_objects;

我也尝试使用NearEarthObject数组的包装类,但仍然无法成功编组。

一般来说,有更好的方法来做这件事吗?

编辑:我相信NearEarthObject的结构与数据匹配。这是我的github

1 个答案:

答案 0 :(得分:0)

尝试使用A list而不是near_earth_objects

的数组
@JsonProperty("near_earth_objects")
private List<NearEarthObject> near_earth_objects;