Gson是Google的一個開源項目,能夠將Java對象轉換成JSON,也可能將JSON轉換成Java對象。 java
Gson裏最重要的對象有2個Gson 和 GsonBuilder json
Gson有2個最基本的方法
1) toJson() – 轉換java 對象到JSON
2) fromJson() – 轉換JSON到java對象 api
下面是幾個小例子 ui
1. toJson() example google
Java代碼
spa
-
class TestObjectToJson {
-
private int data1 = 100;
-
private String data2 = "hello";
-
}
-
-
TestObjectToJson obj = new TestObjectToJson();
-
Gson gson = new Gson();
-
String json = gson.toJson(obj);
會輸出 {"data1":100,"data2":"hello"} orm
2. fromJson() example 對象
Java代碼
io
-
import com.google.gson.Gson;
-
-
class TestJsonFromObject {
-
private int data1;
-
private String data2;
-
}
-
-
String json = "{'data1':100,'data2':'hello'}";
-
Gson gson = new Gson();
-
TestJsonFromObject obj = gson.fromJson(json, TestJsonFromObject.class);
3. 將Java對象的屬性轉換成指定的JSON名字 form
Java代碼
-
import com.google.gson.FieldNamingPolicy;
-
import com.google.gson.Gson;
-
import com.google.gson.GsonBuilder;
-
import com.google.gson.annotations.SerializedName;
-
-
public class TestGson {
-
-
@SerializedName("first_field")
-
private String field1;
-
-
private String secondField;
-
-
public TestGson(String param1, String param2) {
-
field1 = param1;
-
secondField = param2;
-
}
-
}
-
-
TestGson obj = new TestGson("aaaa", "bbbbb");
-
Gson gson = new GsonBuilder().setFieldNamingPolicy(FieldNamingPolicy.UPPER_CAMEL_CASE).create();
-
gson.toJson(obj);
輸出結果 {"first_field":"aaaa","SecondField":"bbbbb"}
原文 - http://www.mkyong.com/java/how-do-convert-java-object-to-from-json-format-gson-api/