将前端请求中的数据绑定到Spring MVC响应方法中参数的四种方法
一、映射URL绑定的占位符到方法参数
1.方法
使用@PathVariable注解
2.代码示例
a.接收请求方法
@RequestMapping(value = "/deleteInfo/{id}")
public String deleteInfo(@PathVariable("id") int shopCartId) {
return "删除成功";
}
b.发出请求
<a href="../shopCart/deleteInfo/1"></a>
二、绑定请求中的参数到方法参数
1.方法
使用@RequestParam注解
2.代码示例
a.接收请求方法
@RequestMapping(value = "/changeAmount")
public String changeAmount(@RequestParam(value = "amount") String amount,
@RequestParam(value = "shopCartId") String shopCartId) {
return "修改成功";
}
b.发出请求
<a href="../shopCart/changeAmount?amount=3&shopCartId=10"></a>
三、绑定表单对象到方法参数(实例对象)
1.方法
创建表单发送请求
2.代码示例
a.接收请求方法
@RequestMapping("/saveInfo")
public String saveInfo(Book book){
return "保存成功";
}
b.发出请求
<form action="../shopCart/saveInfo" method="post">
BookName:<input type="text" name="bookName"><br>
BookId:<input type="password" name="bookId"><br>
sellerId:<input type="text" name="seller.sellerId"><br>
sellerName:<input type="text" name="seller.sellerName"><br>
<input type="submit" value="提交">
</form>
c.Book.java
public class Book{
private int bookId;
private String bookName;
private Seller seller;
// 省略getter和setter方法
}
d.Seller.java
public class Seller{
private int sellerId;
private String sellerName;
// 省略getter和setter方法
}
四、绑定表单对象到方法参数(Map对象)
1.方法
创建表单发送请求
2.代码示例
a.接收请求方法
@RequestMapping("/getUser")
public String getUser(UserMap uMap) {
Set set=uMap.getuMap().keySet();
Iterator iterator=set.iterator();
while(iterator.hasNext()) {
Object keyName=iterator.next();
User u=uMap.getuMap().get(keyName);
System.out.println(u);
}
return "success";
}
b.发出请求
<form action="../user/getUser" method="post">
loginName1:<input type="text" name="uMap['u1'].loginName"><br>
loginPwd1:<input type="password" name="uMap['u1'].loginPwd"><br>
province1:<input type="text" name="uMap['u1'].address.province"><br>
city1:<input type="text" name="uMap['u1'].address.city"><br>
loginName2:<input type="text" name="uMap['u2'].loginName"><br>
loginPwd2:<input type="password" name="uMap['u2'].loginPwd"><br>
province2:<input type="text" name="uMap['u2'].address.province"><br>
city2:<input type="text" name="uMap['u2'].address.city"><br>
<input type="submit" value="提交">
</form>
c.UserMap.java
public class UserMap {
private Map<String, User> uMap; public Map<String, User> getuMap() {
return uMap;
} public void setuMap(Map<String, User> uMap) {
this.uMap = uMap;
}
}
将前端请求中的数据绑定到Spring MVC响应方法中参数的四种方法的更多相关文章
- C#中方法的参数的四种类型
C#中方法的参数有四种类型: 1. 值参数类型 (不加任何修饰符,是默认的类型) 2. 引用型参数 (以ref 修饰符声明) 3. 输出型参数 (以out 修 ...
- Spring MVC 了解WebApplicationContext中特殊的bean类型
Spring MVC 了解WebApplicationContext中特殊的bean类型 Spring的DispatcherServlet使用了特殊的bean来处理请求.渲染视图等,这些特定的bean ...
- spring mvc在Controller中获取ApplicationContext
spring mvc在Controller中获取ApplicationContext web.xml中进行正常的beans.xml和spring-mvc.xml的配置: 需要在beans.xml中进行 ...
- Spring MVC 使用tomcat中配置的数据源
Spring MVC 使用tomcat中配置的数据源 配置tomcat数据源 打开tomcat目录下的conf目录,编辑sever.xml目录.在<GlobalNamingResources&g ...
- 使用Spring Security3的四种方法概述
使用Spring Security3的四种方法概述 那么在Spring Security3的使用中,有4种方法: 一种是全部利用配置文件,将用户.权限.资源(url)硬编码在xml文件中,已经实现过, ...
- IOS中Json解析的四种方法
作为一种轻量级的数据交换格式,json正在逐步取代xml,成为网络数据的通用格式. 有的json代码格式比较混乱,可以使用此“http://www.bejson.com/”网站来进行JSON格式化校验 ...
- 【springmvc Request】 springmvc请求接收参数的几种方法
通过@PathVariabl注解获取路径中传递参数 转载请注明出处:springmvc请求接收参数的几种方法 代码下载地址:http://www.zuida@ima@com/share/1751862 ...
- 在Action类中获得HttpServletResponse对象的四种方法
在struts1.xAction类的execute方法中,有四个参数,其中两个就是response和request.而在Struts2中,并没有任何参数,因此,就不能简单地从execute方法获得Ht ...
- 获取spring容器上下文(webApplicationContext)的几种方法
在很多情况,我们需要先获取spring容器上下文,即webApplicationContext,然后通过webApplicationContext来获取其中的bean.典型的情况是,我想在一个并未委托 ...
随机推荐
- Linux下搭建FFmpeg开发调试环境
背景 如果你是一个FFmpeg的使用者,那么绝大部分情况下只需要在你的程序中引用FFmpeg的libav*相关的头文件,然后在编译阶段链接相关的库即可.但是如果你想调试FFmpeg内部相关的逻辑,或者 ...
- Git项目迁移(把当前git项目迁移到新的git地址)
使用 git clone --bare 命令clone当前git git clone --bare http://gitlab.xxx/demo.git 推到新的git地址 cd demo.git g ...
- Django笔记&教程 2-1 URL与View关系
Django 自学笔记兼学习教程第2章第1节--URL与View关系 点击查看教程总目录 参考:how-django-processes-a-request 1- Django处理请求(request ...
- NodeJS连接MongoDB和mongoose
1.MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案.是世界上目前用的最广泛的nosql数据库 2.noSql 翻译过来 not o ...
- C#环境变量配置及csc命令详解(转自cy88310)
C#环境变量设置步骤: 在桌面右击[我的电脑]->[属性]->[高级]->[环境变量] 在下面的系统变量栏点击"新建" 变量名输入"csc" ...
- [atAGC029F]Construction of a tree
构造一张二分图,左边是$n$个点,右边是$n-1$个集合,按照点属于集合连边 定义一组匹配的意义,即说明该点的父亲在该集合中选择 利用dinic求出二分图的最大匹配,若不为$n-1$则无解,否则考虑如 ...
- pyinstaller进行打包exe文件
百度直接pip安装,报错 下载离线文件报错. 百度了一下:还真好使 Python生成可执行文件主要有三种方法,利用py2exe,pyInstaller或cx_Freeze. 这里选择pyinstall ...
- Mybatis类型转换BUG
案例:mybatis框架的使用中是否遇到过前台传入数据后mybatis后台并不执行sql的情况呢? 比如:前台传入一个状态var flag //空字符,0,1 然后你用int接收,到mybatis框架 ...
- 洛谷 P3994 高速公路(斜率优化)
题目链接 题意:给出一棵树,\(1\) 号点为根,边上有边权. 每个点有两个参数 \(p_i,q_i\) 如果你想从 \(i\) 号点到与其距离为 \(d\) 的 \(j\) 号点,那么你需花费 \( ...
- Codeforces 1270H - Number of Components(线段树)
Codeforces 题目传送门 & 洛谷题目传送门 首先需发现一个性质,那就是每一个连通块所对应的是一个区间.换句话说 \(\forall l<r\),若 \(l,r\) 在同一连通块 ...