第一种形式:

提交的数据形式:id=1,2,3 --> urlEncoding -->  id=1%2C2%2C3

     <form method="post" action="http://localhost/ExamOnline/page/test/list2">

         id<input type="text" name="id"><br/>
id<input type="text" name="id"><br/>
id<input type="text" name="id"><br/>
<input type="submit">
</form>

服务器可以对其进行接收用List或者字符串(List接收时,@RequestParam("id") 必不可少,不然报错)

List接收:

     @RequestMapping("/test/list1")
@ResponseBody
public String testlist(@RequestParam("id") List<Integer> ids) { for (Integer integer : ids) {
System.out.println(integer);
}
return "ok";
}

字符串接收:

     @RequestMapping("/test/list2")
@ResponseBody
public String testlist(String id) { System.out.println(id);
return "ok";
}

第二种形式:

提交数据格式:ques[0].id=1&ques[0].title=1&ques[1].id=2&ques[1].id=2 --> UrlEncoding转码 --> 省略

表单:

     <form method="post" action="http://localhost/ExamOnline/page/test/list3">

         id<input type="text" name="ques[0].id"><br/>
name<input type="text" name="stu[0].title"><br/>
id<input type="text" name="ques[1].id"><br/>
name<input type="text" name="stu[1].title"><br/>
id<input type="text" name="ques[2].id"><br/>
name<input type="text" name="stu[2].title"><br/>
<input type="submit">
</form>

后台:通过一个Bean封装进去

     @RequestMapping("/test/list3")
@ResponseBody
public String testpojolist(RequestModel bean) { for (Question q : bean.getQues()) {
System.out.println(q.getTitle());
} return "ok";
}
 //get、set函数必不可少,反射必用
public class RequestModel { private List<Question> ques;
public List<Question> getQues() {
return ques;
}
public void setQues(List<Question> ques) {
this.ques = ques;
} }

第三种形式:

前台提交json格式的数据,后台使用@RequestBody List<XX> 接收即可,js转换json数据不太方便,省略

Spring接收List型参数的更多相关文章

  1. spring mvc 对象型参数的传递(遇到坑了)

    直接来个列子: 这里设置了,contenType="application/json" 这里post 接收的参数对象. 但是问题来了: <html> <head& ...

  2. Spring接收web请求参数的几种方式

    1 查询参数 请求格式:url?参数1=值1&参数2=值2...同时适用于GET和POST方式spring处理查询参数的方法又有几种写法: 方法一:方法参数名即为请求参数名 // 查询参数1 ...

  3. springmvc接收List型参数长度

    springmvc默认接收list参数长度为256,过长则报越界异常,添加 @InitBinder public void initBinder(WebDataBinder binder) { // ...

  4. Spring MVC在接收复杂集合参数

    Spring MVC在接收集合请求参数时,需要在Controller方法的集合参数里前添加@RequestBody,而@RequestBody默认接收的enctype (MIME编码)是applica ...

  5. 【spring mvc】spring mvc POST方式接收单个字符串参数,不加注解,接收到的值为null,加上@RequestBody,接收到{"uid":"品牌分类大”},加上@RequestParam报错 ---- GET方式接收单个参数的方法

    spring mvc POST方式 接收单个参数,不加任何注解,参数名对应,接收到的值为null spring mvc POST方式 接收单个参数,加上@RequestBody,接收到参数格式:{&q ...

  6. Spring Boot程序接收命令行参数

    Spring Boot程序接收命令行参数 输入一行,回车,触发一次.如果想要调用service层,也是可以,能调用service层,就可以做很多事,触发一次就好比调用了一次http接口一样 packa ...

  7. spring接收参数

    public class LogonModel { private String UserName; private String Password; public String getUserNam ...

  8. 【spring】spring boot中使用@EnableTransactionManagement 以后,spring mvc接收前台ajax的post方法传过来的参数,使用@RequestBody接收不到参数

    在启动类上添加了注解: @EnableTransactionManagement, postMan测试接口,以这种方式传递参数: 测试结果: 接收不到参数 问题解决: 原因:是因为 这个项目中的Con ...

  9. SpringMVC接收复杂集合参数

    Spring MVC在接收集合请求参数时,需要在Controller方法的集合参数里前添加@RequestBody,而@RequestBody默认接收的enctype (MIME编码)是applica ...

随机推荐

  1. ubuntu 14.04 x64下安装libreoffice

    LibreOffice是ubuntu 上的办公软件很多人都知道微软公司的的Word.Excel.PowerPoint和Outlook,但是很少有人知道LibreOffice. LibreOffice靠 ...

  2. access denied for user 'root'@'localhost'

    编辑mysql配置文件my.ini(在mysql的安装目录下,我的在D:\Program Files\MySQL\MySQL Server 5.0\my.ini),在[mysqld]这个条目下加入 s ...

  3. Markdown使用心得

    1. 标题的使用 在使用标题时,如果为了层次清晰,可以在"#"后加上"1. "或者"1.1. "这种序号. 每一级标题的正文结束后,最好加一 ...

  4. Markdown使用样例

    # 欢迎使用 Cmd - 在线 Markdown 编辑阅读器 ------ 我们理解您需要更便捷更高效的工具记录思想,整理笔记.知识,并将其中承载的价值传播给他人,**Cmd Markdown** 是 ...

  5. js面对对象的几种方式

    1.对象的字面量    var obj = {} 2.创建实例对象    var obj = new Object(); 3.构造函数模式    function fn(){}, new fn(); ...

  6. 5.EM

  7. 2. Shell编程第二讲

    (1) 条件测试: test   [ 命令 test 或 [ 可以测试一个条件是否成立,如果测试结果为真,则该命令的Exit Status为0,如果测试结果为假,则命令的Exit Status为1(注 ...

  8. Jenkins项目部署使用教程-----03节点添加

    1)添加节点 系统管理——>管理节点——>新建节点 进入配置界面 点ok进入配置界面配置,——>高级 点击save保存,进入节点,点击Launch agent使得jenkins服务器 ...

  9. [BJOI2012]连连看 BZOJ2661 费用流

    题目描述 凡是考智商的题里面总会有这么一种消除游戏.不过现在面对的这关连连看可不是QQ游戏里那种考眼力的游戏.我们的规则是,给出一个闭区间[a,b]中的全部整数,如果其中某两个数x,y(设x>y ...

  10. 5、C++结构体的使用

    5.结构体定义 结构体是用户带定义的类型,而结构声明定义了这种类型的数据属性.定义了类型后,便可以创建这种类型的变量,因此创建结构包括两步.首先,定义结构描述——它描述并标记了能够存储在结构中的各种数 ...