java - 如何使用 Jackson 读取 JSON 文件中的多个对象?

标签 java json list jackson jackson-databind

我编写了一些代码来保存 List<Class> 的内容到一个 JSON 文件,看起来有点像这样:

{ "firstName": "Name", "lastName": "LastName", "Email": "Email" } { "firstName": "Name2", "lastName": "LastName2", "Email": "Email2" }

现在我尝试将此文件输入到我的程序中,该程序可以工作,但只返回第一个 JSON 对象。这是我的代码:

ObjectMapper mapper = new ObjectMapper();
JsonNode readFile = mapper.readTree(new File("path/to/file.json"));

如何读取完整的 JSON 文件以及如何将其内容添加到上述同一列表中? 我偶然发现的每个教程等都仅使用单个对象来解释这一点。 谢谢!

最佳答案

你可以这样做:

创建一个像这样的用户类:

public class User {
    private String email;
    private String firstName;
    private String lastName;

    // Setters and getters
}

现在你可以这样做:

String json = yourJson;
ObjectMapper mapper = new ObjectMapper();
User[] userArray = mapper.readValue(json, User[].class);
List<User> userList = Arrays.asList(mapper.readValue(json, User[].class));

关于java - 如何使用 Jackson 读取 JSON 文件中的多个对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61150817/

相关文章:

Java Web 服务错误 : com. ctc.wstx.exc.WstxEOFException:prolog 中出现意外的 EOF

ios - 将 json 字典保存到核心数据 Swift 3

Javascript 将一个表拆分为多个表

jquery - 使用 jQuery 获取另一个文件列表中的下一个 href?

python - 字典列表,按列表键无交集

java - 从 Android 应用程序自动在本地网络上查找服务器

java - 计算 2 个独立字符串内的破折号,如果每个字符串的相同位置有相同数量的破折号,则返回 true?

java - 我的 Android 服务在启动时无法启动

javascript - 如何获取指向javascript对象属性的链接数

arrays - Raku 列表添加运算符 `Z+` 'fails' 除非强制列表之一