【发布时间】:2017-11-28 19:16:37
【问题描述】:
我之前关于这个的问题并没有真正得到任何地方,也许我没有问正确的问题或者它太详细了。
我现在的基本问题是,如何将具有一个类名的 JSON 对象反序列化为具有不同类名的 Java 对象?
例如,服务器发送/期望的 JSON 类是“18”(我对此的控制为零)。我的 Java 类不能是“18”,所以它是“_18”。
即使使用不同的命名策略,只需执行 new Gson().fromJson() 也无济于事; _18 对象始终为空。从那以后,我已经阅读了有关类型适配器和不同注释的信息,但仍不清楚如何解决这个问题。似乎最明智的方法@SerializedName,显然不能用于类本身,只能用于字段成员。
如何将具有名为 18 的类的 JSON 对象反序列化为名为 _18 的 Java 类(或者更好的是,如果可能的话,我可以给该类起一个真实的名称)?
示例 JSON,按请求:
"18": {
"field1": "value1",
"field2": "value2",
"field3": "value3"
}
【问题讨论】:
-
你能发布一个你正在处理的 JSON 样本吗?
-
在编辑中添加了示例 JSON。
-
使用地图
: "18" 将是地图的键。