1. 程式人生 > >前端傳送的多層巢狀json解析

前端傳送的多層巢狀json解析

日前同事問及我jQuery 傳送JSON資料到後臺,後臺該如何接收的問題,經多方查閱,總結出了以下方法:

前臺要用到json2.js和jquery.js

後臺要用到json.jar。

在前端要將傳的JSON資料使用JSON.stringify(這裡是json資料)轉化成字串,後臺呼叫import net.sf.json.JSONObject方法或者採用獲取字元流的方法來獲取前臺傳送的資料。

例:

前端://拼裝JSON格式資料json

             var json={"edit":[{"bh":"11111","mc":"11111","dbms":"ORACLE9i","dwmmc":"","addr":"","username":"","password":"","rm_sz":"ck","nyr_sz":"","id":"-1"},{"bh":"121","mc":"12","dbms":"ORACLE9i","dwmmc":"12","addr":"12","username":"12","password":"12","rm_sz":"ck","nyr_sz":"2011-09-06","id":"13"}],"del":["12"]};

             var post={data:JSON.stringify(json)};//JSON.stringify(json)把json轉化成字串
             $.post(url,post);

後臺:JSONObject json=JSONObject.fromObject(request.getParameter("data"));
             List<Map<String,String>> edit=(List<Map<String, String>>) json.getJSONArray("edit");
             List<?> del=(List<?>) json.getJSONArray("del");