GET请求如何传递数组参数

之前对于GET请求传递数组参数的情况,处理方式通常是把参数定义为用逗号分隔,在后台用字符串接收,然后把接收到的参数用逗号分隔转换为数组对象。今天偶然间看到了一篇类似的文章,再加上自己的验证测试,得到了两种传参方式,总结如下:

方式一

可以将数组参数传递多次,springmvc会将多个同名参数自动封装成数组或者集合对象,示例如下:

# 请求URL
http://127.0.0.1:8080/getUsers?name=张三&name=李四

# 后台接口代码
@RestController
@RequestMapping("/")
public class SpringMvcController {

    @RequestMapping(value = "/getUsers", method = RequestMethod.GET)
    # String[] name也可以切换为List name
    public String getUsers(@RequestParam String[] name) {
        return name[0] + "  " + name[1];
    }
}

方式二、

直接将数组指用逗号分隔,示例如下:

# 请求URL
http://127.0.0.1:8080/getTeachers?name=王五,刘麻子

# 后台接口代码
@RestController
@RequestMapping("/")
public class SpringMvcController {

    @RequestMapping(value = "/getTeachers", method = RequestMethod.GET)
    # String[] name也可以切换为List name
    public String getTeachers(@RequestParam String[] name) {
        return name[0] + "  " + name[1];
    }
}

你可能感兴趣的:(GET请求如何传递数组参数)