在 Java 中,可以使用 JSON 解析库将 JSON 数组转换为 Java 对象数组。以下是使用 Jackson 和 Gson 这两个常见的 JSON 解析库来实现的方法:
使用 Jackson 库
pom.xml
文件中添加 Jackson 的依赖。<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.13.0</version>
</dependency>
Person
,可以使用以下代码将 JSON 数组转换为Person
对象数组。import com.fasterxml.jackson.databind.ObjectMapper;
public class JsonArrayToJavaObjectArrayJackson {
public static void main(String[] args) {
String jsonArray = "[{\"name\":\"John\",\"age\":30},{\"name\":\"Jane\",\"age\":25}]";
try {
// 创建ObjectMapper实例来进行JSON解析
ObjectMapper objectMapper = new ObjectMapper();
// 将JSON数组字符串转换为Java对象数组
Person[] persons = objectMapper.readValue(jsonArray, Person[].class);
for (Person person : persons) {
System.out.println("Name: " + person.name + ", Age: " + person.age);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
class Person {
public String name;
public int age;
}
使用 Gson 库
pom.xml
中添加 Gson 的依赖。<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.9</version>
</dependency>
Person
类,使用 Gson 进行转换的代码如下。import com.google.gson.Gson;
public class JsonArrayToJavaObjectArrayGson {
public static void main(String[] args) {
String jsonArray = "[{\"name\":\"John\",\"age\":30},{\"name\":\"Jane\",\"age\":25}]";
// 创建Gson实例
Gson gson = new Gson();
// 将JSON数组字符串转换为Java对象数组
Person[] persons = gson.fromJson(jsonArray, Person[].class);
for (Person person : persons) {
System.out.println("Name: " + person.name + ", Age: " + person.age);
}
}
}
class Person {
public String name;
public int age;
}
在上述两种方法中,都先定义了一个包含 JSON 数组的字符串jsonArray
,然后通过各自 JSON 解析库的相关方法将其转换为Person
类型的 Java 对象数组。需要注意的是,Java 类中的属性名称要与 JSON 对象中的键名称相匹配,否则可能无法正确映射数据。如果 JSON 数据中的键与 Java 类中的属性名称不一致,可以使用相应库提供的注解来进行自定义映射。
没有搜到相关的沙龙
领取专属 10元无门槛券
手把手带您无忧上云