1.导入jar包,依赖如下
2.代码如下:
/**
* 班级类
* @author win 10
*
*/
public class Grades {
private String name;
/*
* 嵌套一个学生集合
*/
private List<Student> students;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public List<Student> getStudents() {
return students;
}
public void setStudents(List<Student> students) {
this.students = students;
}
@Override
public String toString() {
return "Grades [name=" + name + ", students=" + students.toString() + "]";
}
}
/**
* 学生类
* @author win 10
*
*/
public class Student {
private int age;
private String grades;
private String gender;
private String name;
private double weight;
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getGrades() {
return grades;
}
public void setGrades(String grades) {
this.grades = grades;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getWeight() {
return weight;
}
public void setWeight(double weight) {
this.weight = weight;
}
@Override
public String toString() {
return "Student [age=" + age + ", grades=" + grades + ", gender=" + gender + ", name=" + name + ", weight="
+ weight + "]";
}
}
测试类
public class Json2JavaObject {
public static void main(String[] args) {
String jsonStr = "{\"name\":\"三班\",\"students\":[{\"age\":25,\"gender\":\"female\",\"grades\":\"三班\",\"name\":\"露西\",\"weight\":51.3},"
+ "{\"age\":26,\"gender\":\"male\",\"grades\":\"三班\",\"name\":\"杰克\","+ "\"weight\":66.5},"
+ "{\"age\":25,\"gender\":\"female\",\"grades\":\"三班\",\"name\":\"莉莉\","+ "\"weight\":55}]}";
JSONObject jsonObject = JSONObject.fromObject(jsonStr);
Map<String, Class> classMap = new HashMap<String, Class>();
classMap.put("students", Student.class);
Grades bean = (Grades)JSONObject.toBean(jsonObject, Grades.class, classMap);
System.out.println(bean.toString());
}
}
测试输出结果:
Grades [name=三班, students=[Student [age=25, grades=三班, gender=female, name=露西, weight=51.3], Student [age=26, grades=三班, gender=male, name=杰克, weight=66.5], Student [age=25, grades=三班, gender=female, name=莉莉, weight=55.0]]]
转载博客链接:https://blog.csdn.net/zalan01408980/article/details/80559051