gson
轉載http://xiaoming2xiaohong.iteye.com/blog/1393392
最近的項目,接口傳輸格式用JSON,試用了一下google的gson框架,感覺不錯,目前最新的版本是2.0
1、如果一個字段標記爲transient,那麼默認是被忽略的,在serialization和deserialization中都不會加進來
2、當調用toJson()方法時,爲null的字段,不會輸出到json串裏;當調用fromJson()方法時,如果VO裏有,但是json串裏沒有,則字段會被設置成null;如果VO裏沒有,json串裏有,那麼該字段會被忽略
3、內部類默認情況下沒法deserialize,除非實現InstanceCreator
4、調用fromJson()方法時,必須要指定VO的type,gson才能知道怎麼deserialize傳進來的json串,以下是例子:
String json = "[1,2,3,4,5]";
Type type= new TypeToken<Collection<Integer>>(){}.getType();
Collection<Integer> ints = gson.fromJson(json,type);
String json = "{\"field1\":\"value1\",\"field2\":\"value2\",\"field3\",\"value3\"}";
Type type= new TypeToken<MyObject>(){}.getType();
MyObject myObject = gson.fromJson(json,type);