使用api发送请求,会获得一个String类型的返回值,其中响应体格式为:
{
"code" : 0,
"message" : "success",
"data" : {
"count" : 2,
"list" : [ {} ]
}
}
封装一个data的格式
public class BreedingPlanPage<T> {
private Integer count;
private List<T> list;
}
将请求进行处理
String httpRequest = HttpUtils.sendHttpRequest(BASE_URL + "/getRiceMission", header, body, "POST");
String data = JSON.parseObject(httpRequest).getString("data");
BreedingPlanPage<RiceMissionVo> parseObject = JSON.parseObject(data, new TypeReference<BreedingPlanPage<RiceMissionVo>>() {});
return parseObject;
这里使用了
TypeReference
来指定泛型类型,因为JSON.parseObject()
方法不直接支持泛型。TypeReference
会保留类型信息,使得Fastjson
能够正确地将JSON解析为List<RicePlanterInfoVo>
。