首页 > 文章列表 > 如何使用Gson在Java中向JSON字符串添加/插入额外的属性?

如何使用Gson在Java中向JSON字符串添加/插入额外的属性?

java json Gson
358 2023-08-19

com.google.gson.JSonElement 类表示一个 Json 元素。我们可以使用 Gson 类的 toJsonTree() 方法将对象的表示序列化为一个 JsonElements 树。我们可以使用 JSonElementgetAsJsonObject() 方法向 JSON 字符串添加/插入一个附加属性。该方法返回一个 JsonObject 元素。

语法

public JsonObject getAsJsonObject()

Example

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