业务需求:向magic-api发送JSON类型请求数据,将请求得到的数据转换为实体List数组返回
实现思路:
1.将magic-api请求数据使用JSONObjetc.parseObject()函数转换为JSONObject
2.将发送请求后获取的数据使用JSON.toJSONString()进行转换;
3.将转换后的String类型数据再使用JSONArray.parseArray()函数转换为JSONArray数组类型数据;
4.再定义一个JSONObject类型变量,用于将上一步获取的JSONArray数组数据的进行转换,转换为实体类对应的Key;
5.定义实体类数组用于存放转换了Key后的数据;
6.遍历JSONArray数组的Key,将其Key设置为需要的Key,随后存入之前定义的JSONObject变量中;
7.定义实体变量,将JSONObject中的数据使用JSONObject.toJavaObject(JSONObject,parseObject(JSONObject.toJSONString(jsonObject数据)),实体类.class)函数转换为实体对象;
8.将转换后的实体对象存入步骤5中创建的实体数组;
9.根据获取到的状态码返回不同的数据。
具体实现:
@Override
public MultiResponse getLeaderboards(RemoteRequest remoteRequest){
JSONObject ranking = JSONObject.parseObject(JSON.