将JSON格式字符串转成对象、数组、取值等
将前端给我们传的JSON格式的字符串解析,得到我们想要的数据
例:
String data = "[{\"name\":\"认证测试\",\"data\":\"{\"smsConfigId\":\"1\",\"idCode\":\"ceshiSms\",\"smsMsg\":\"您的验证码为:#{code}\"}\",\"category\":\"1\"},{\"name\":\"测试单图广告\",\"data\":\"{\"skipType\":\"2\",\"duration\":\"\",\"adInfo\":{\"959\":[],\"993\":[]}}\",\"category\":\"2\"}]";
//先将字符串转JSON数组
JSONArray array = JSONArray.parseArray(data);
//从JSON数组中获取对象
JSONObject jO = array.getJSONObject(0);
//因为里面的data后面的花括号外面有双引号,所有要先转一次字符串,若没有双引号直接转对象就行
String str = jO.getString("data");
//再转对象就好了
JSONObject jsonObject = JSON.parseObject(str);
//然后就可以获取对象的值了
//通过相应的方法可以获取相应的类型的值,会自动转换类型
Integer smsConfigId = jsonObject.getInteger("smsConfigId");
Object idCode = jsonObject.get("idCode");
String smsMsg = jsonObject.getString("smsMsg");