Gson

json字符串和对象转化

  1. 将一个对象序列化
Gson gson = new Gson();
String userJson = gson.toJson(userObject);

  1. 将一个对象反序列化
User user = gson.fromJson(userJson, User.class);
  1. 嵌套Java对象的序列化和反序列化
    json结构如下:
{
    "age": 26,
    "email": "[email protected]",
    "isDeveloper": true,
    "name": "chenrenxiang",

    "userAddress": {
        "city": "Magdeburg",
        "country": "Germany",
        "houseNumber": "42A",
        "street": "Main Street"
    }
}

序列化和反序列化的过程和上面的一样

  1. List 的序列化/反序列化

序列化同上

Gson gson = new Gson();
String userJson = gson.toJson(userObject);

反序列化:

String userJson = "[{'isDeveloper':false,'name':'xiaoqiang','age':26,'email':'[email protected]'},{'isDeveloper':true,'name':'xiaoqiang123','age':27,'email':'[email protected]'}]";

Gson gson = new Gson();
Type userListType = new TypeToken>(){}.getType();

List userList = gson.fromJson(userJson, userListType); 

对于List,反序列化时必须提供它的Type,通过Gson提供的TypeToken .getType()方法可以定义当前List的Type。

你可能感兴趣的:(Gson)