将JSONObject(json对象)解析为java对象

报文如下:
{ "header":{"serialno":"21021815470060949400","txcode":"GET_YRYM"},
  "data":{"retcod":"yes","retmsg":"success","datastr":{"res":  {"bbk_nbr":"122","id":5,"img_url":"https://s3gw.cmbchina.com/branch_tj022_bg.11/img/cmbPersonCode/sqxyk.png","sys_cod":"sqxyk","sys_name":"信用卡申请","sys_status":"00","sys_type":"card","sys_url":"https://res.cc.cmbimg.com/itafront/Frog/index.html#/login3/api3xxfhhj/remote?webAddress=N57FHXM2073F678300HZ&dsid={yst_id}&popup=true"}
}}}
处理如下:
System.out.println("传回的数据是:"+retmsg); //这个retmsg就是上面的报文
  JSONObject res = JSON.parseObject(retmsg); //先解析成JSONObject
  res = res.getJSONObject("data").getJSONObject("datastr"); //得到data中的datastr
  Personcode personcode = JSONObject.toJavaObject(res.getJSONObject("res"),Personcode.class); //得到其中的res,将其解析为Personcode对象
  System.out.println("personcode:"+personcode);
  return   personcode;
第一步:
{ "header":{"serialno":"21021815470060949400","txcode":"GET_YRYM"},
  "data":{"retcod":"yes","retmsg":"success","datastr":{"res":  {"bbk_nbr":"122","id":5,"img_url":"https://s3gw.cmbchina.com/branch_tj022_bg.11/img/cmbPersonCode/sqxyk.png","sys_cod":"sqxyk","sys_name":"信用卡申请","sys_status":"00","sys_type":"card","sys_url":"https://res.cc.cmbimg.com/itafront/Frog/index.html#/login3/api3xxfhhj/remote?webAddress=N57FHXM2073F678300HZ&dsid={yst_id}&popup=true"}
}}}
第二步:
"data":{"retcod":"yes","retmsg":"success","datastr":{"res":  {"bbk_nbr":"122","id":5,"img_url":"https://s3gw.cmbchina.com/branch_tj022_bg.11/img/cmbPersonCode/sqxyk.png","sys_cod":"sqxyk","sys_name":"信用卡申请","sys_status":"00","sys_type":"card","sys_url":"https://res.cc.cmbimg.com/itafront/Frog/index.html#/login3/api3xxfhhj/remote?webAddress=N57FHXM2073F678300HZ&dsid={yst_id}&popup=true"}
}}
第三步:"datastr":{"res":  {"bbk_nbr":"122","id":5,"img_url":"https://s3gw.cmbchina.com/branch_tj022_bg.11/img/cmbPersonCode/sqxyk.png","sys_cod":"sqxyk","sys_name":"信用卡申请","sys_status":"00","sys_type":"card","sys_url":"https://res.cc.cmbimg.com/itafront/Frog/index.html#/login3/api3xxfhhj/remote?webAddress=N57FHXM2073F678300HZ&dsid={yst_id}&popup=true"}
}
第四步:
然后就可以解析为对象
 
用的是这个方法:
JSONObject.toJavaObject(JSONObject   ,  Obejct.class);
用的JSON包是  com.alibaba.fastjson.JSONObject
原文地址:https://www.cnblogs.com/GritMVP/p/14412198.html