今日在工作中在调用方法时,返回的是一个json格式的数据,在这里记录一下如何解析这个json,获取里面想要的数据。
这里调用的是一个方法如下:
DataResult dataResult = authServiceClient.queryUserByUserId(Long.parseLong(userId));
返回的dataResult格式如下(再插入一张图片吧,更直观一些,格式是一样的,不要在乎数据是否一致):
{
“isSuccessful”: true,
“result”: {
“bizSeqNo”: “19101720001015300118160256043161”,
“code”: “0”,
“faceId”: “717fc2a9f097aaff35c79ef5570b5017”,
“msg”: “请求成功”,
“orderNo”: “db2ab07091284b9d8df3e337f6130669”,
“sign”: “13E1BDDC039EB5DCFA4FF0C2021A864B9FC0BD73”,
“transactionTime”: “20191017181602”
},
“status”: {
“statusCode”: “000000”
}
}
那怎么获取里面的数据呢?
1,先将dataResult转换成String字符串
String s = JSONObject.toJSONString(dataResult);
2,然后将String字符串转换成json对象,获取最外层的值
JSONObject result =JSONObject.parseObject(s).getJSONObject(“result”);
最后就是获取最里层的值
String realName=result.getString(“realName”);
这样就获取到了最里面的值了。