问题描述
我正在处理传入的JSON字符串,并想使用GSON将它们反序列化为类型化的POJO对象。 但是,推送字符串的服务器可以发送不同类型的对象-尽管类型是在JSON有效负载中定义的。
因此,请看下面的两个JSON字符串,其中有一个tradeEvent和一个errorEvent对象(还有其他5种类型,例如结算事件,付款事件等)。
我如何才能将其反序列化为GSON中的实际POJO(大概使用泛型),因为直到运行时我才知道类型-如您所见,第二级元素包含实际的对象类型(tradeEvent,errorEvent等)。
还应该添加-就POJO而言,我将第二个元素(即tradeEvent,errorEvent)表示为对象还是字符串?
{
"data": {
"tradeEvent": {
"tradeId": "2d28d464-a746-4c58-b19f-b586d2f5d015","status": 2,"eventDescription": "Trade Settled"
}
}
}
{
"data": {
"errorEvent": {
"Uuid": "3a36ae26-ba41-40d5-b11d-d8d842eb2356","failureCode": 2,"tradeId": "2d28d464-a746-4c58-b19f-b586d2f5d015","errorMessage": "Returned error: Exception while processing transaction: trade not matched"
}
}
}
感谢您的指导。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)