SpringBoot如何接收數組參數的方法
1.創建一個表單實體類,將數組封裝到實體類中(Post提交)
表單類代碼:
@Data public class MyForm { private int[] ids; }
控制器代碼:
@Slf4j @RestController @RequestMapping("/info") public class InfoController { @PostMapping("/test") public String test(@RequestBody MyForm form){ log.info(Arrays.toString(form.getIds())); return "success"; } }
前端代碼:
wx.request({ url:'http://localhost:8085/info/test', data:{ ids:[1,2,3] }, method:'POST', success:function(res){ console.log(res); } })
2.通過方法內參數傳遞,註意!!!SpringBoot方法內接收數組時,數組在前端請求時必須將參數拼接在路徑裡提交才可以接收到。(Get提交)
後端代碼:
@Slf4j @RestController @RequestMapping("/info") public class InfoController { @GetMapping("/test") public String test(int[] ids){ log.info(Arrays.toString(ids)); return "success"; } }
小程序前端代碼:參數需拼接到路徑裡,並且要以GET方式提交
var ids = [1, 2, 3, 4] wx.request({ url: 'http://localhost:8085/info/test?ids='+ids, method: 'GET', success: function(res){ console.log(res); } })
請求頭:
vue axios前端代碼(註意,數組需要調用encodeURIComponent進行編碼):
test() { let ary = [1,2,3] let params = { ids:encodeURIComponent(ary),}; that.$http.get("http://localhost:8085/info/test",{params}).then(res=>{ if(res.code==0){ that.$message.success('查詢成功') }else { that.$message.error(res.message||'查詢失敗') } }).catch(error=>{ that.$message.error('查詢失敗') }) }
註意!!!請求路徑中的參數必須跟上圖所示的一樣才能被接收到。
到此這篇關於SpringBoot如何接收數組參數的方法的文章就介紹到這瞭,更多相關SpringBoot接收數組參數內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- springboot @RequestBody 接收字符串實例
- vue日常開發基礎Axios網絡庫封裝
- Vue項目中封裝axios的方法
- vue項目中如何使用mock你知道嗎
- 小程序與後端Java接口交互實現HelloWorld入門