使用嵌套的List <object> </object>反序列化gson对象

时间:2012-12-19 10:35:38

标签: serialization gson

public class ListResult<T> {

    private boolean ok;
    private String message;
    private java.util.List<T> data;
    private Paging paging;
}

当我想要像这样的RESTful调用时反序列化JSON:

Type fooType = new TypeToken<ListResult<T>>() {}.getType();
Gson gson = new Gson();
Object model = gson.fromJson(strResult, fooType);

获取A ListResult,其中数据字段是StringMap的列表,而不是像ListResult类中定义的T列表

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

Type fooType = new TypeToken<ListResult<StringMap>>() {}.getType();
Gson gson = new Gson();
ListResult<StringMap> model = gson.fromJson(strResult, fooType);

Gson无法读懂您的想法,或无法自行确定通用类型;)

https://sites.google.com/site/gson/gson-user-guide#TOC-Serializing-and-Deserializing-Generic-Types

答案 1 :(得分:-1)

只是不要使用列表,使用数组MyObj[] myObjs。您不需要使用TypeToken方式