最近想用JSON發送1次發送多個數據回后台的時候,涉及到不同的表參數。網上找的解析JSON的例子大多參數都是對象。或者JSON里面的參數都是和類的屬性對應的。但是我想要傳的是參數是在不同的類里面的。我又不想用參數的形式多次分別傳。就想用JSON一起傳然后分別解析。
難道我每一個涉及到不同類的參數都要新建一個實體類加上對應的屬性才能獲取解析?太扯了。。終於想到了用Map的方法進行解析。因為JSON里面也是key value形式的。對應用mao.get()獲取就好了。
實例:
JSON:(簡單代碼演示:示意2條數據分別屬於不同的實體類scenic,ticket)
{ "scenic": [ {"snId":1} ], "ticket": [ {"tkId":1} ] }
Controller:
/** * JSON解析(fastjson方式) */ @RequestMapping(value = "/testJson") @ResponseBody public void deleteScenic(@RequestBody String jsonRequest) { //獲取前端傳來的JSON字符串 JSONObject jsonObject = JSONObject.parseObject(jsonRequest); Map<String, Object> map =jsonObject; String scenic = map.get("scenic").toString(); String ticket = map.get("ticket ").toString(); List<Scenic> list = JSONObject.parseArray(scenic,Scenic.class); List<Ticket > list = JSONObject.parseArray(ticket ,Ticket .class); }
這樣通過List分別獲取到了前端傳來的多個不同表的數據了。至於要用這個數據干嘛就不管了。
而且Postman是真的好用。方便的模擬請求。我就不用寫一個頁面發送請求了。我只是想拿到數據在做后台操作然后返回而已。
記錄一下方便記憶
1.下載:百度
2.使用示意:僅僅示例傳JSON格式的
選擇post方式,輸入請求路徑,選擇json請求
在body里面,選擇raw,選擇JSON格式。輸入代碼就好了。驗證JSON格式的網站:https://www.json.cn/
在最下面就有結果了: