Thư viện Gson có thể được sử dụng để phân tích cú pháp chuỗi JSON thành Chế độ cây l. Chúng tôi có thể sử dụng JsonParser để phân tích cú pháp chuỗi JSON thành Mô hình cây thuộc loại JsonElement . getAsJsonObject () phương pháp của JsonElement có thể được sử dụng để lấy phần tử là JsonObject và getAsJsonArray () phương pháp của JsonElement có thể được sử dụng để lấy phần tử là JsonArray .
Cú pháp
public JsonObject getAsJsonObject() public JsonArray getAsJsonArray()
Ví dụ
import java.util.List; import com.google.gson.*; public class JsonTreeModelTest { public static void main(String args[]){ String jsonStr = "{\"name\":\"Adithya\",\"age\":20,\"year of passout\":2005,\"subjects\": [\"MATHEMATICS\",\"PHYSICS\",\"CHEMISTRY\"]}"; JsonParser jsonParser = new JsonParser(); JsonElement jsonElement = jsonParser.parse(jsonStr); if(jsonElement.isJsonObject()) { JsonObject studentObj = jsonElement.getAsJsonObject(); System.out.println("Student Info:"); System.out.println("Name is: " + studentObj.get("name")); System.out.println("Age is: " + studentObj.get("age")); System.out.println("Year of Passout: " + studentObj.get("year of passout")); JsonArray jsonArray = studentObj.getAsJsonArray("subjects"); System.out.println("Subjects:" + jsonArray); } } } // Student class class Student { private String name; private int age; private int passoutYear; private List subjects; public Student(String name, int age, int passoutYear, List subjects) { this.name = name; this.age = age; this.passoutYear = passoutYear; this.subjects = subjects; } @Override public String toString() { return "Student{" + "name='" + name + '\'' + ", age='" + age + '\'' + ", year of passout=" + passoutYear + ", subjects=" + subjects + '}'; } }
Đầu ra
Student Info: Name is: "Adithya" Age is: 20 Year of Passout: 2005 Subjects:["MATHEMATICS","PHYSICS","CHEMISTRY"]