Google出品的gson是一款能將json和對象之間互相轉換的Java庫。它能夠幫助我們快速地把一個Java對象轉化為json字符串。比如下面這個例子:
Gson gson = new Gson(); Person person = new Person("張三", 25, "男"); String json = gson.toJson(person);
在上面的代碼中,首先我們創建了一個Gson對象。接著我們創建了一個Person對象,該對象擁有name、age、gender三個屬性。最后,我們通過gson.toJson()方法將person對象轉化為json字符串。
轉化出來的json字符串如下:
{ "name": "張三", "age": 25, "gender": "男" }
我們可以看到,json字符串擁有類似于Java對象的屬性和值的形式,而且屬性名是用雙引號包裹的。
我們也可以通過GsonBuilder添加一些解析器,以更好地滿足我們的需求。比如,我們可以通過setPrettyPrinting()方法來改變輸出json字符串的格式,以使它更加可讀。下面是一個實例:
GsonBuilder builder = new GsonBuilder().setPrettyPrinting(); Gson gson = builder.create(); Person person = new Person("張三", 25, "男"); String json = gson.toJson(person);
代碼中,我們通過GsonBuilder創建了一個builder對象,并通過setPrettyPrinting()方法來設置輸出的格式。接著,我們創建了一個Person對象,并通過gson.toJson()方法將它轉化為json字符串。
轉化出來的json字符串如下:
{ "name": "張三", "age": 25, "gender": "男" }
我們可以看到,由于我們使用了setPrettyPrinting()方法,輸出的json字符串用入了縮進和換行,使得它更加可讀。