如何在 Java 中使用 Gson 向 JSON 字符串添加/插入其他属性?\

javajsonobject oriented programmingprogramming

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"
}

相关文章