Android端传过来的json数组:
{"data":[{"checkItem":[{"time":"2017年04月12日09:28:58","id":1,"remarks":"dfgh","checked":false},{"time":"2017年04月12日09:28:58","id":3,"remarks":"fhj","checked":false}],"materielId":"3","isQualified":true},{"checkItem":[{"time":"2017年04月12日09:28:58","id":1,"remarks":"dfgh","checked":false},{"time":"2017年04月12日09:28:58","id":3,"remarks":"fhj","checked":false}],"materielId":"4","isQualified":false},{"checkItem":[{"time":"2017年04月12日09:28:58","id":1,"remarks":"dfgh","checked":false},{"time":"2017年04月12日09:28:58","id":3,"remarks":"fhj","checked":false}],"materielId":"5","isQualified":true}]}
json解析时先下载相应的jar包,点击下载
看不清楚?格式化一下:
{
"data": [
{
"checkItem": [
{
"time": "2017年04月12日09:28:58",
"id": 1,
"remarks": "dfgh",
"checked": false
},
{
"time": "2017年04月12日09:28:58",
"id": 3,
"remarks": "fhj",
"checked": false
}
],
"materielId": "3",
"isQualified": true
},
{
"checkItem": [
{
"time": "2017年04月12日09:28:58",
"id": 1,
"remarks": "dfgh",
"checked": false
},
{
"time": "2017年04月12日09:28:58",
"id": 3,
"remarks": "fhj",
"checked": false
}
],
"materielId": "4",
"isQualified": false
},
{
"checkItem": [
{
"time": "2017年04月12日09:28:58",
"id": 1,
"remarks": "dfgh",
"checked": false
},
{
"time": "2017年04月12日09:28:58",
"id": 3,
"remarks": "fhj",
"checked": false
}
],
"materielId": "5",
"isQualified": true
}
]
}
web中的代码:
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
String jsonString = request.getParameter("jsonString");// Android传值
System.out.println("---------this is ReceiveJsonFromAndroidToInsertSQLServlet.java------------------------");
System.out.println("jsonString = " + jsonString);
System.out.println("---------this is ReceiveJsonFromAndroidToInsertSQLServlet.java------------------------");
JSONObject jb = new JSONObject();
JSONArray array = (JSONArray) jb.fromObject(jsonString).get("data");
for (int i = 0; i < array.size(); i++) {
System.err.println("array.size()=" + array.size());// 3
JSONObject o = (JSONObject) array.get(i);// 获得第一个array data 结果
String materielId = o.getString("materielId").toString();// 物料id
String isQualified = o.getString("isQualified").toString();// 是否合格
JSONArray array2 = (JSONArray) o.get("checkItem");
System.err.println("array2.size()=" + array2.size());// 2
for (int j = 0; j < array2.size(); j++) {
JSONObject o2 = (JSONObject) array2.get(j);// 获得第二个array checkItem 结果
String time = o2.get("time").toString();// 时间
String remarks = o2.get("remarks").toString();// 备注
String checked = o2.get("checked").toString();// Android端的checkbox是否选中
String id = o2.getString("id").toString();// 检查项的id
System.out.println("time=" + time + "----remarks=" + remarks + "---checked=" + checked
+ "----array.size()=" + array.size());
}
}
}
打印结果为:
array.size()=3
array2.size()=2
time=2017年04月12日09:28:58----remarks=dfgh---checked=false----array.size()=3
time=2017年04月12日09:28:58----remarks=fhj---checked=false----array.size()=3
time=2017年04月12日09:28:58----remarks=dfgh---checked=false----array.size()=3
time=2017年04月12日09:28:58----remarks=fhj---checked=false----array.size()=3
time=2017年04月12日09:28:58----remarks=dfgh---checked=false----array.size()=3
time=2017年04月12日09:28:58----remarks=fhj---checked=false----array.size()=3
array.size()=3
array2.size()=2
array.size()=3
array2.size()=2