javaWeb解析安卓端传过来的json数组

来源:互联网 发布:淘宝信誉查询怎么查 编辑:程序博客网 时间:2024/06/05 12:07

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());// 3JSONObject o = (JSONObject) array.get(i);// 获得第一个array data 结果String materielId = o.getString("materielId").toString();// 物料idString isQualified = o.getString("isQualified").toString();// 是否合格JSONArray array2 = (JSONArray) o.get("checkItem");System.err.println("array2.size()=" + array2.size());// 2for (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();// 检查项的idSystem.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

0 0