spring boot如何接收有数组的对象?

前端Json参数如下:

{

"name":"渠道3",

"createrId":[1,2,3,4]

}

如何用@RequestBody 注解接收呢?

// 这样貌似不行

public Response getCanal(@RequestBody Map<String, List<Integer>> req){

我要取出来createrId配置mybatis plus的IN语句使用

 queryWrapper.in("creater_id",req.get("createrId"));


回答:

定义一个类:

// 省略 import,getter 和 setter 使用 lombok

@Getter

@Setter

public class QueryParams {

private String name;

private List<Integer> creatorId;

}

在 controller 直接将该 entity 作为入参即可:

// 省略 import

@RestController

@RequestMapping("/my_entity")

public class MyEntityController {

@PostMapping

public Response getCanal(@RequestBody QueryParams queryParams) {

String name = queryParams.getName();

List<Integer> creatorId = queryParams.getCreatorId();

// do something...

}

}

以上是 spring boot如何接收有数组的对象? 的全部内容, 来源链接: utcz.com/p/944225.html

回到顶部