Spring MVC 接受数组、集合、对象

前台多个input name属性一致时

前台

<form action="/sysUser/create" method="post">
<input type="checkbox" name="roleId" >
<input type="checkbox" name="roleId" >
<input type="checkbox" name="roleId" >
</form>

后台

// 方法一:list接收
public String create(@RequestParam(value="roleId", required = false) List<Long> roleIds) {
}

// 方法二:String接收
String roleId:单独接,做实体属性都可以接收到。
使用 @RequestBody ,用String接

前台使用 array 显式提交

前台

var roleId = [];
roleId.push(100);
roleId.push(200);
roleId.push(300);
$.post(url, {roleId: roleId}, function(){
	
});

后台

// 方法一:用list接
public String create(@RequestParam(value="roleId[]", required = false) List<Long> roleIds) {
 
}
// 方法二:用array接
public String create(@RequestParam(value="roleId[]", required = false) Long[] roleIds) {
 
}
  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 Java 和 Spring MVC 中,处理请求参数中集合类型的参数`drProjectStageList[0][startTime]`可以按照以下步骤进行: 1. 创建一个与请求参数对应的 Java 类,其中包含 `drProjectStageList` 字段和相应的 getter 和 setter 方法。 ```java public class RequestBody { private List<Map<String, String>> drProjectStageList; public List<Map<String, String>> getDrProjectStageList() { return drProjectStageList; } public void setDrProjectStageList(List<Map<String, String>> drProjectStageList) { this.drProjectStageList = drProjectStageList; } } ``` 2. 在你的控制器方法中,使用 `@RequestBody` 注解将请求体映射到上面创建的 Java 类。 ```java @PostMapping("/your-endpoint") public void yourControllerMethod(@RequestBody RequestBody requestBody) { // 在这里处理 requestBody 中的数据 } ``` 3. 确保发送的请求体中包含正确格式的 JSON 数据,其中 `drProjectStageList` 是一个数组数组的每个元素都是一个包含 `startTime` 属性的对象。 请求示例: ```json { "drProjectStageList": [ { "startTime": "2022-01-01" }, { "startTime": "2022-02-01" } ] } ``` 当请求到达后端时,Spring MVC 将自动将请求体中的 JSON 数据映射到 `RequestBody` 对象,并将其作为参数传递给控制器方法。 通过这种方式,你可以在后端 Java 代码中轻松地处理集合类型的 JSON 请求参数。记得根据实际情况修改代码中的类名、字段名和端点路径。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值