📅  最后修改于: 2023-12-03 14:44:51.862000             🧑  作者: Mango
ObjectMapper 是一个常用的 Java 序列化和反序列化库,可用于将 JSON 数据转换为 Java 对象,以及将 Java 对象转换为 JSON 数据。在此介绍如何使用 ObjectMapper 将 JSON 数据转换为对象列表。
在 pom.xml 中加入以下依赖:
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson.version}</version>
</dependency>
创建一个类来表示 JSON 数据的对象。例如,假设我们要读取一个 JSON 文件,其中包含多个人员信息,每个人员信息包括 ID、姓名和年龄:
public class Person {
private int id;
private String name;
private int age;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
使用 ObjectMapper 读取 JSON 文件,并将数据转换为对象列表:
ObjectMapper mapper = new ObjectMapper();
List<Person> persons = mapper.readValue(new File("persons.json"), new TypeReference<List<Person>>(){});
这里,我们创建了一个 ObjectMapper 实例并使用 readValue() 方法读取 JSON 文件。注意,需要使用 TypeReference 类来指定要转换的对象类型。
现在我们已经将 JSON 数据转换为对象列表。可以像处理普通的 List 对象一样来处理它。例如,可以遍历整个列表并打印每个人员的姓名:
for (Person person : persons) {
System.out.println(person.getName());
}
使用 ObjectMapper 可以方便地将 JSON 数据转换为对象列表。只需定义一个类来表示 JSON 数据的对象,然后使用 readValue() 方法读取 JSON 文件并将其转换为列表。最后,可以像处理普通的 List 对象一样来处理数据。