请问根据 ID 批量删除,前端传入的是 JSON 数组,比如
[1,2,3]
传统在 URL 上传参是可以直接通过数组接收,但是通过 JSON 传参,则需要使用 @RequstBody 接收,但是接收的数据类型设置为什么呢?
前端在数组里面传对象,也可以接收
[{"id:1},{"id":2}]
但是后端如何接收
[1,2,3]
这样的 json 数据?
1
xDaShen 2020-07-12 10:09:43 +08:00 1
List<Integer>
|
2
magiclz233 2020-07-12 10:13:48 +08:00 1
List<String>或者 List<Integer>, 里面传的是你的要删除的 id 集合, 如果是[{},{}]这种形式,List<Bean>
|
3
oneisall8955 2020-07-12 12:02:30 +08:00 via Android
印象 @RequestBody int[] ids 可以好像,List<Intege> ids 外面需要包一层?
具体忘记了(#-.-) |
4
zhuawadao 2020-07-12 12:07:40 +08:00 1
@JsonObject 试试可以吗
|
5
paragon 2020-07-12 12:33:36 +08:00 1
RequestEntity<List<Long>> ids;
ids.getBody(); |
6
ilumer 2020-07-12 16:44:54 +08:00 1
这是 spring mvc,在 body 里面直接接收数组
{ private List<Long> ids; } https://docs.spring.io/spring/docs/current/spring-framework-reference/web.html#mvc-ann-requestbody |
7
EminemW 2020-07-12 18:08:50 +08:00
你应该用 json 格式。。
{ "id":[] } |
8
cnzjl 2020-07-12 21:55:18 +08:00 1
get 请求前端传递字符串用,分割, post 请求前端直接传递数组如:[1,2,3,4] ,直接 @RequestBody 就好了
```java @RequestMapping(value = "array",method = RequestMethod.POST) @ResponseBody public String array(@RequestBody List<Integer> ids){ return ids.toString(); } ``` |