[英]Paring json string in java with javax.json
我的ajax传递了一个看起来像这样的json数组:
{"formData":[{"cusID":"2"},{"empID":"1"}],"invoice":578416969}
我正在尝试使用javax.json
库获取数据。
JSONObject jsonObj = new JSONObject(jasonString);
我可以获取invoice
的价值:
Integer invoiceNum = (Integer) jsonObj.get("invoice");
但是我无法通过执行以下操作来获取cusID
和empID
的值:
Integer cusId = Integer.parseInt((String) jsonObj.get("cusID"));
Integer empId = Integer.parseInt((String) jsonObj.get("empID"));
错误消息:org.json.JSONException:找不到JSONObject [“ cusID”]。
我做错了什么? 我愿意接受建议,如果您有更好的方式处理此json
数据,我愿意使用它。
cusID
实际上是数组formData
第一个对象的属性:
jsonObj.getJsonArray("formData").getJsonObject(0).get("cusID");
应该可以。
首先,您必须获取formData作为数组,之后获取第一个元素并获取custId,然后获取第二个元素并获取empID。
您可以使用Gson()库。 (com.google.gson.Gson)它使您变得简单。
JsonArray formData = jsonElement.getAsJsonObject().get("formData").getAsJsonArray();
Integer cusId = formData.get(0).getAsJsonObject().get("cusID").getAsInt();
Integer empId = formData.get(1).getAsJsonObject().get("empID").getAsInt();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.