gson 是 Google 推出的一個處理 JSON 數據的 Java 庫。在實際開發過程中,我們常常需要拼接 JSON 字符串。gson 提供了一種簡單易用的方法來拼接 JSON,下面我們來詳細介紹。
首先,我們需要創建一個 Gson 對象:
Gson gson = new Gson();
然后,我們可以通過創建一個JsonObject
對象來構建 JSON 字符串:
JsonObject jsonObject = new JsonObject(); jsonObject.addProperty("name", "小明"); jsonObject.addProperty("age", 18); jsonObject.addProperty("gender", "male"); String jsonString = gson.toJson(jsonObject); System.out.println(jsonString);
上面的代碼輸出的結果是:
{ "name": "小明", "age": 18, "gender": "male" }
除了使用JsonObject
,我們還可以使用JsonArray
對象來拼接 JSON 字符串。例如:
JsonArray jsonArray = new JsonArray(); JsonObject jsonObject1 = new JsonObject(); jsonObject1.addProperty("name", "小明"); jsonObject1.addProperty("age", 18); jsonObject1.addProperty("gender", "male"); jsonArray.add(jsonObject1); JsonObject jsonObject2 = new JsonObject(); jsonObject2.addProperty("name", "小紅"); jsonObject2.addProperty("age", 19); jsonObject2.addProperty("gender", "female"); jsonArray.add(jsonObject2); String jsonString = gson.toJson(jsonArray); System.out.println(jsonString);
上面的代碼輸出的結果是:
[ { "name": "小明", "age": 18, "gender": "male" }, { "name": "小紅", "age": 19, "gender": "female" } ]
最后,需要注意的是,gson 在處理 JSON 數據時,對于 JSON 中的 null 值會直接忽略。如果需要把 null 值也放入 JSON 字符串中,需要使用JsonNull
對象來表示,例如:
JsonObject jsonObject = new JsonObject(); jsonObject.addProperty("name", "小明"); jsonObject.addProperty("age", 18); jsonObject.addProperty("gender", "male"); jsonObject.add("lastLoginTime", JsonNull.INSTANCE); String jsonString = gson.toJson(jsonObject); System.out.println(jsonString);
上面的代碼輸出的結果是:
{ "name": "小明", "age": 18, "gender": "male", "lastLoginTime": null }