Java是一個廣泛使用的編程語言,在Json開發中也有廣泛的應用。Json是一種輕量級的數據交換格式,Java中Json庫有很多,例如:Google的Gson,阿里巴巴的FastJson等,下面我們就來看看其中的一些函數。
/** * 將Java對象轉為Json字符串 * * @param obj Java對象 * @return Json字符串 */ public static String toJson(Object obj) //示例 Person person = new Person("Tom", 18); String jsonStr = JsonUtils.toJson(person); System.out.println(jsonStr); // {"name":"Tom","age":18}
toJson函數可以將Java對象轉為Json字符串,方便在網絡傳輸中傳遞參數。以上代碼中,我們定義了一個Person對象,并將其轉為Json字符串。
/** * 將Json字符串轉為Java對象 * * @param jsonStr Json字符串 * @param clazz 目標Java對象的類型 * @return Java對象 */ public staticT fromJson(String jsonStr, Class clazz) //示例 String jsonStr = "{\"name\":\"Tom\",\"age\":18}"; Person person = JsonUtils.fromJson(jsonStr, Person.class); System.out.println(person.getName()); // Tom System.out.println(person.getAge()); // 18
fromJson函數則可以將Json字符串轉為Java對象,使用時需要指定目標Java對象的類型。以上代碼中,我們將之前生成的Json字符串轉為Person對象,并輸出其屬性。
/** * 將Json字符串轉為JsonElement對象 * * @param jsonStr Json字符串 * @return JsonElement對象 */ public static JsonElement parse(String jsonStr) //示例 String jsonStr = "{\"name\":\"Tom\",\"age\":18}"; JsonElement jsonElement = JsonUtils.parse(jsonStr); System.out.println(jsonElement.getAsJsonObject().get("name").getAsString()); // Tom
parse函數可以將Json字符串轉為JsonElement對象。在Json對象較為復雜的情況下,我們可以使用JsonElement進行操作。以上代碼中,我們輸出了JsonElement中的"name"屬性。
/** * 將JsonElement對象轉為Json字符串 * * @param jsonElement JsonElement對象 * @return Json字符串 */ public static String toJson(JsonElement jsonElement) //示例 JsonObject jsonObject = new JsonObject(); jsonObject.addProperty("name", "Tom"); jsonObject.addProperty("age", 18); String jsonStr = JsonUtils.toJson(jsonObject); System.out.println(jsonStr); // {"name":"Tom","age":18}
toJson函數還可以將JsonElement對象轉為Json字符串。在構造Json對象時,我們可以使用JsonObject來創建JsonElement類型對象,并利用toJson函數轉為Json字符串。以上代碼中,我們創建了一個JsonObject,并輸出其Json字符串。