Lớp com.google.gson.JsonElement đại diện cho một phần tử của Json. Chúng ta có thể dùng phương thức toJsonTree() của lớp Gson để serialize biểu diễn đối tượng thành cây JsonElements. Chúng ta có thể thêm/chèn thuộc tính bổ sung vào chuỗi JSON bằng cách sử dụng phương thức getAsJsonObject() của JsonElement. Phương thức này trả về phần tử dưới dạng JsonObject.
Cú pháp
public JsonObject getAsJsonObject()
Ví dụ
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 sau khi chèn thuộc tính bổ sung: \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;
}
}
Kết quả
JSON String: { "name": "Adithya" }
JSON String sau khi chèn thuộc tính bổ sung: { "name": "Adithya", "id": "115" }