Spring接收List型参数
第一种形式:
提交的数据形式: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型参数的更多相关文章
- spring mvc 对象型参数的传递(遇到坑了)
直接来个列子: 这里设置了,contenType="application/json" 这里post 接收的参数对象. 但是问题来了: <html> <head& ...
- Spring接收web请求参数的几种方式
1 查询参数 请求格式:url?参数1=值1&参数2=值2...同时适用于GET和POST方式spring处理查询参数的方法又有几种写法: 方法一:方法参数名即为请求参数名 // 查询参数1 ...
- springmvc接收List型参数长度
springmvc默认接收list参数长度为256,过长则报越界异常,添加 @InitBinder public void initBinder(WebDataBinder binder) { // ...
- Spring MVC在接收复杂集合参数
Spring MVC在接收集合请求参数时,需要在Controller方法的集合参数里前添加@RequestBody,而@RequestBody默认接收的enctype (MIME编码)是applica ...
- 【spring mvc】spring mvc POST方式接收单个字符串参数,不加注解,接收到的值为null,加上@RequestBody,接收到{"uid":"品牌分类大”},加上@RequestParam报错 ---- GET方式接收单个参数的方法
spring mvc POST方式 接收单个参数,不加任何注解,参数名对应,接收到的值为null spring mvc POST方式 接收单个参数,加上@RequestBody,接收到参数格式:{&q ...
- Spring Boot程序接收命令行参数
Spring Boot程序接收命令行参数 输入一行,回车,触发一次.如果想要调用service层,也是可以,能调用service层,就可以做很多事,触发一次就好比调用了一次http接口一样 packa ...
- spring接收参数
public class LogonModel { private String UserName; private String Password; public String getUserNam ...
- 【spring】spring boot中使用@EnableTransactionManagement 以后,spring mvc接收前台ajax的post方法传过来的参数,使用@RequestBody接收不到参数
在启动类上添加了注解: @EnableTransactionManagement, postMan测试接口,以这种方式传递参数: 测试结果: 接收不到参数 问题解决: 原因:是因为 这个项目中的Con ...
- SpringMVC接收复杂集合参数
Spring MVC在接收集合请求参数时,需要在Controller方法的集合参数里前添加@RequestBody,而@RequestBody默认接收的enctype (MIME编码)是applica ...
随机推荐
- 使用JMeter测试基于WebSocket协议的服务
使用JMeter测试基于WebSocket协议的服务 :first-child{margin-top:0!important}img.plugin{box-shadow:0 1px 3px rgba( ...
- 如何将Sql server数据库中的模型图转化到Word中--并能够查看字段的属性信息
1. 在Sql server数据库中创建数据库的模型图 -- Database Diagrams 2. 控制面板--管理工具--ODBC数据源链接--创建一个Sql server的数据源链接 3. 打 ...
- Glib之GObject宏介绍
G_DEFINE_TYPE定义一个静态类型 /** * G_DEFINE_TYPE(`G_DEFINE_TYPE_WITH_CODE`比`G_DEFINE_TYPE`就是多了一个自定义代码参数_C_) ...
- kali linux之wireshark/tcpdump
抓包嗅探协议分析,必备技能,抓包引擎(linux---libpcap9 windows-----winpcap10) 解码能力优秀 常见协议包 数据包的分层i协议 arp icmp tcp--三次 ...
- PAT1002 写出这个数 (C++实现)
PAT乙级考试题目 1002 写出这个数 (20 分) 题目要求: 读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式: 每个测试输入包含 1 个测试用例,即给出自然数 ...
- Cboard 实现看板里面图表仪表盘之间的联动
首先要了解Cboard的概念, 1.看板 2.图表 看Cborad的菜单知道了,首先先设计图表,可以展现未柱状图或者其它图片形式或者数据表格式.然后看板可以由多个图表组合而成. 需求如下: 看板包含两 ...
- 添加win10激活工具
其实我们可以随便准备一个win10的激活密钥激活! 以管理员的身份进入到CMD下.. slmgr.vbs /upk 清除掉旧的slmgr /ipk W269N-WFGWX ...
- P1613 跑路
Luogu1613 #include<bits/stdc++.h> using namespace std; const int N=65; bool G[N][N][N]; int di ...
- HDU 6356 (线段树-l,r 之间小于val 的变val+单点求值)
题目描述: 给你一个长度为n的最开始为0的数以及m个更新操作以及数据生成器参数X,Y,Z.每次操作,将由数据生成器生成出li,ri,vi.让你从区间[li,ri]中,将所有小于vi的数变为vi.最后让 ...
- 设置input placeholder的样式
::-webkit-input-placeholder {/*Chrome/Safari*/ font-family: 'Avenir', Helvetica, Arial, sans-serif; ...