杰克逊 - Json到多个参赛作品的PO​​JO

Moh*_*med 7 java json jackson

我知道如果User.json文件有

{
  "name" : { "first" : "Joe", "last" : "Sixpack" },
  "gender" : "MALE",
  "verified" : false,
  "userImage" : "Rm9vYmFyIQ=="
}
Run Code Online (Sandbox Code Playgroud)

我可以像这样构造一个User对象:

User user = mapper.readValue(new File("user.json"), User.class);
Run Code Online (Sandbox Code Playgroud)

但是如果文件User.json具有以下内容,我该如何构造对象列表:

{
  "name" : { "first" : "Joe", "last" : "Sixpack" },
  "gender" : "MALE",
  "verified" : false,
  "userImage" : "Rm9vYmFyIQ=="
},
{
  "name" : { "first" : "Jane", "last" : "Austen" },
  "gender" : "FEMALE",
  "verified" : false,
  "userImage" : "DFREWEWE=="
}
Run Code Online (Sandbox Code Playgroud)

Sta*_*Man 11

多种方式:如果你有这些JSON数组,你可以这样做:

User[] users = mapper.readValue(json, User[].class);
Run Code Online (Sandbox Code Playgroud)

或者,如果它只是一个根级别值序列,您可以这样做:

Iterator<User> it = mapper.readValues(json, User.class);
Run Code Online (Sandbox Code Playgroud)

并迭代值(添加到List等)