คลาส com.google.gson.JsonElement แทนองค์ประกอบของ Json เราสามารถใช้เมธอด toJsonTree() ของคลาส Gson เพื่อทำให้การแสดงออบเจ็กต์เป็นต้นไม้ของ JsonElements เราสามารถเพิ่ม/แทรกพร็อพเพอร์ตีเพิ่มเติมในสตริง JSON ได้โดยใช้เมธอด getAsJsonObject() ของ JsonElement เมธอดนี้ส่งคืนเพื่อรับองค์ประกอบเป็น JsonObject
ไวยากรณ์
public JsonObject getAsJsonObject()
ตัวอย่าง
import com.google.gson.*;
public class AddPropertyGsonTest {
public static void main(String[] args) {
Gson gson = new GsonBuilder().setPrettyPrinting().create(); // pretty print JSON
Student student = new Student("Adithya");
String jsonStr = gson.toJson(student, Student.class);
System.out.println("JSON String: \n" + jsonStr);
JsonElement jsonElement = gson.toJsonTree(student);
jsonElement.getAsJsonObject().addProperty("id", "115");
jsonStr = gson.toJson(jsonElement);
System.out.println("JSON String after inserting additional property: \n" + jsonStr);
}
}
// Student class
class Student {
private String name;
public Student(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}ผลลัพธ์
JSON String: {
"name": "Adithya"
}
JSON String after inserting additional property: {
"name": "Adithya",
"id": "115"
}