背景:系统A调用了B系统的接口,原代码:
JSONObject.parseObject(data, 实体.class);
data的格式:{
"name":“111”;
“type”: "1"
}
实体class{
name;
type;
get/setxx
}
后来B系统的返回参数变化成:既带有实体,也带有属性。
{
result :{
"name":“111”;
“type”: "1"
},
"sign": “sssssss”
}
新定义实体:
实体class{
result;---------对象类,包含name,type
sign
get/setxx
}
报错:JSONException: syntax error, expect {, actual string, pos 0, fastjso 无法解析。
解决方法:
-
JSONObject data=JSON.parseObject(data);
-
Result result =JSON.parseObject(data.getString("result"));
String sign = JSON.parseObject(data.getString("sign "));
参考链接: