如何使用 Gson 將額外的屬性新增到 JSON 字串或將其插入 JSON 字串?


com.google.gson.JSonElement 類表示 Json 的一個元素。我們可以使用 Gson 類的 toJsonTree() 方法將某個物件的表示形式序列化為 JsonElements 的樹。我們可以使用 JSonElementgetAsJsonObject() 方法新增/插入一個額外的屬性到 JSON 字串。此方法返回 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"
}

更新於:19-2 月-2020

8 千+ 閱讀量

啟動您的職業

完成課程後獲得認證

入門
廣告