(一)从字符串解析JSON对象,取JSON数组再取对象
//需要fastjson包
//从字符串解析JSON对象,取JSON数组再取对象
public class strTojsonobj {
public static void main(String[] args) {
String result = {"code":0,"message":"成功","data":{"total":1,"seals": [{"sealId":"44cdfeda","fileKey":"$aa02f","width":95,"height":95,"alias":null,"sealType":2,"defaultFlag":true,"url":"https://xxxxx","status":1,"reason":null,"createDate":1610609219000,"sealBizType":"COMMON","sealBizScene":0,"ruleGrantCount":null}]}};
String seals = getjson(result, "seals");
//取JSON数组再取对象
JSONArray myList = JSON.parseArray(seals);
JSONObject jsonObject=myList.getJSONObject(0);
String sealId=jsonObject.getString("sealId");
}
public static String getjson(String datalist,String name) throws IOException{
String result;
JSONObject myList;
result = "";
//从字符串解析JSON对象
myList = JSON.parseObject(datalist);
JSONObject data = (JSONObject) myList.get("data");
result = data.get(name).toString();
return result;
}
}
(二)JSON对象,JSON数组构成字符串
//需要fastjson包
//从字符串解析JSON对象,取JSON数组再取对象
public class strTojsonobj {
public static void main(String[] args) {
JSONObject objone = new JSONObject();
JSONObject objtwo = new JSONObject();
JSONObject objthree = new JSONObject();
ArrayList list = new ArrayList();
//对象里添加数组
objone.put("signfields",list); //{[]}
//对象里添加对象
objtwo.put("posPage","1"); //{"posPage":"1"}
objthree.put("posBean",objtwo); //{"posBean":{"posPage":"1"}}
objthree.put("signType",1); //{"posBean":{"posPage":"1"},"signType":1}
//数组里添加对象
list.add(objthree); //{[{"posBean":{"posPage":"1"},"signType":1}]}
//将JSON对象转化为字符串
String signarea = objone.toJSONString();
return signarea;
}
}
fastjson包:https://gitee.com/gpyjie/public_stroe.git(可以在阿里云那边下载最新的包)
菜鸟(java对json的操作): https://www.runoob.com/w3cnote/java-json-instro.html