axios 传递复杂数组结构后端如何接受

传递复杂数组结构 如果是对象就直接用一个pojo来接受就可以了

前端数据格式

其实就是对象包裹一个集合 因为直接集合是不行的 List<Object> list 所以要用 Pojo{List<Object> list} 就可以了

{
    "list": [
        {
            "classNum": 1,
            "userId": 2,
            "equipments": [
                1,2,5
            ],
            "startTime": "2021-01-15"
        },
        {
            "classNum": 1,
            "userId": 3,
            "equipments": [
                1,5,6
            ],
            "startTime": "2021-01-15"
        }
    ]
}

后端接受

    @RequestMapping("insertSchedule")
    @ApiOperation("插入排班信息")
    public Map<String, Object> insertSchedule(@RequestBody InsertScheduleVo param) {
        return userService.insertSchedule(
                param.getList()
        );
    }

通过一个对象将数组接受过来 然后里面放数组就可以了

mvc会自动将这个这个对象里面的数组解析成对应的实体类 这样就可以接受数组了

@Data
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
public class UserSchduleEntityVo {
    private Integer id;
    private String classNum;
    private Integer userId;
    private String startTime;
    private List<Integer> equipments;
}
@Data
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
public class InsertScheduleVo {
    private List<UserSchduleEntityVo> list;
}

不需要想这样一个一个解析

        JSONArray processIds = param.getJSONArray("processId");
        JSONArray userIds = param.getJSONArray("userIds");
        List<Integer> process = JSONObject.parseArray(processIds.toJSONString(), Integer.class);
        List<Integer> userIdsList = JSONObject.parseArray(userIds.toJSONString(), Integer.class);
        Integer[] list = new Integer[process.size()];
        Integer[] userArr = new Integer[userIdsList.size()];
        String className = param.getString("className");
        String depart = param.getString("depart");
        Integer userPowerId = param.getInteger("userPowerId");
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值