gpt4 book ai didi

java - Gson 序列化为 LinkedTreeMap 而不是我的实体

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:26:14 25 4
gpt4 key购买 nike

我尝试在 Android 应用程序中使用 REST 服务,但在序列化 ArrayList 时遇到问题:

我的 RESTful 服务返回:

enter image description here

我的 Android 应用程序收到:

enter image description here

我正在使用 Gson 库来序列化我的对象,当然问题与它有关。从这个意义上讲,我尝试按如下方式制作 Serializer:

public class MySerializer<E> 
implements JsonSerializer<Collection<E>>, JsonDeserializer<Collection<E>> {

@Override
public Collection<E> deserialize(JsonElement json, Type typeOfT,
JsonDeserializationContext context) throws JsonParseException {
Type type = new TypeToken<List<E>>(){}.getType();
return context.deserialize(json, type);
}
@Override
public JsonElement serialize(Collection<E> src, Type typeOfSrc,
JsonSerializationContext context) {
Type type = new TypeToken<List<E>>(){}.getType();
return context.serialize(src, type);
}
}

注册了 apapter ( registerTypeAdapter(ArrayList.class, new MySerializer<Object>()) ),但这不起作用...

谁能帮帮我?

最佳答案

能否请您尝试将gradle版本更改为更新版本并检查问题是否已解决。

我也有同样的问题,当我将 gradle 版本从 1.5.0 更改为 2.1.0 时问题得到解决

关于java - Gson 序列化为 LinkedTreeMap 而不是我的实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22740240/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com