java - SpringBoot 使用 Jackson 在 Java 中反序列化 JSON 数组

标签 java list spring-boot jackson resttemplate

我目前正在编写一个 SpringBoot 应用程序,该应用程序从外部 API 检索 JSON 数组。我需要的 JSON 部分如下所示:

{
"users": [
    "id": 110,
    "name": "john"
  ]
}

在我的 Controller 中,我正在执行以下操作:

 ResponseEntity<Users> response = restTemplate
    .exchange(url, headers, Users.class);

return response

然后我有一个 Users 类,如下所示:

@JsonProperty("id")
public String id;
@JsonProperty("name")
public string name;

如何访问 JSON 数组内的信息?

提前致谢。

最佳答案

您需要接受用户列表,而不是根据返回类型加载到 POJO 中。

您无法接受 ResponseEntity 中的用户类列表,您需要先将其转换为对象类。

ResponseEntity<Object> response = restTemplate .exchange(url, headers, Object.class);

然后您需要将其转换为用户列表。

List<Users> usersList = (List<Users>) response.getBody();

关于java - SpringBoot 使用 Jackson 在 Java 中反序列化 JSON 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56924121/

相关文章:

java - 更新 Android Studio 后膨胀类 CollapsingToolbarLayout 时出错

java - 为什么我不能将二进制字符串与空格连接起来? (就像下面的例子)

html - 带有 justify-content :space-evenly, 的 100% 宽度 flex 水平列表如何将元素符号居中放置在空格中?

android - 如何将 <Spanned> 放入 list.setAdapter?

java - TemplateResolver.set Order user 在 thymeleaf 中的作用是什么?

java - 如何增加 Azure 应用服务中托管的 Java Spring Boot 应用程序的最大 HTTP header 大小(部署为 .WAR)?

"Object"类的 java 泛型函数参数类型不匹配

java - Tomcat 是如何管理 session 的?

list - 返回没有最后一个元素的列表

java - Spring 验证: get single (relevent) validation message for multiple constraints