一、映射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响应方法中参数的四种方法的更多相关文章

  1. C#中方法的参数的四种类型

    C#中方法的参数有四种类型:       1. 值参数类型  (不加任何修饰符,是默认的类型)       2. 引用型参数  (以ref 修饰符声明)       3. 输出型参数  (以out 修 ...

  2. Spring MVC 了解WebApplicationContext中特殊的bean类型

    Spring MVC 了解WebApplicationContext中特殊的bean类型 Spring的DispatcherServlet使用了特殊的bean来处理请求.渲染视图等,这些特定的bean ...

  3. spring mvc在Controller中获取ApplicationContext

    spring mvc在Controller中获取ApplicationContext web.xml中进行正常的beans.xml和spring-mvc.xml的配置: 需要在beans.xml中进行 ...

  4. Spring MVC 使用tomcat中配置的数据源

    Spring MVC 使用tomcat中配置的数据源 配置tomcat数据源 打开tomcat目录下的conf目录,编辑sever.xml目录.在<GlobalNamingResources&g ...

  5. 使用Spring Security3的四种方法概述

    使用Spring Security3的四种方法概述 那么在Spring Security3的使用中,有4种方法: 一种是全部利用配置文件,将用户.权限.资源(url)硬编码在xml文件中,已经实现过, ...

  6. IOS中Json解析的四种方法

    作为一种轻量级的数据交换格式,json正在逐步取代xml,成为网络数据的通用格式. 有的json代码格式比较混乱,可以使用此“http://www.bejson.com/”网站来进行JSON格式化校验 ...

  7. 【springmvc Request】 springmvc请求接收参数的几种方法

    通过@PathVariabl注解获取路径中传递参数 转载请注明出处:springmvc请求接收参数的几种方法 代码下载地址:http://www.zuida@ima@com/share/1751862 ...

  8. 在Action类中获得HttpServletResponse对象的四种方法

    在struts1.xAction类的execute方法中,有四个参数,其中两个就是response和request.而在Struts2中,并没有任何参数,因此,就不能简单地从execute方法获得Ht ...

  9. 获取spring容器上下文(webApplicationContext)的几种方法

    在很多情况,我们需要先获取spring容器上下文,即webApplicationContext,然后通过webApplicationContext来获取其中的bean.典型的情况是,我想在一个并未委托 ...

随机推荐

  1. Go defer 原理和源码剖析

    Go 语言中有一个非常有用的保留字 defer,它可以调用一个函数,该函数的执行被推迟到包裹它的函数返回时执行. defer 语句调用的函数,要么是因为包裹它的函数执行了 return 语句,到达了函 ...

  2. RabbitMQ 处理过慢,原来是一个 SQL 缓存框架导致的 GC 频繁触发

    一:背景 1. 讲故事 上个月底,有位朋友微信找到我,说他的程序 多线程处理 RabbitMQ 时过慢,帮忙分析下什么原因,截图如下: 这问题抛出来,有点懵逼,没说CPU爆高,也没说内存泄漏,也没说程 ...

  3. Python基础(偏函数)

    import functools#functools.partial就是帮助我们创建一个偏函数的,functools.partial的作用就是,把一个函数的某些参数给固定住(也就是设置默认值),返回一 ...

  4. Salesforce Consumer Goods Cloud 浅谈篇四之店内拜访的创建和执行

    本篇参考: https://v.qq.com/x/page/f0772toebhd.html https://v.qq.com/x/page/e0772tsmtek.html https://v.qq ...

  5. [luogu6702]Path

    维护每一个点到根路径的异或和(记作$d_{k}$),根据异或自反性,$(x,y)$的异或和即$d_{x}\oplus d_{y}$ 考虑两条路径的lca,选择其中深度较大的点,另一条路径必然在其子树外 ...

  6. C语言下的Led灯

    1. 设计思想 1.1 设置处理器模式 设置sp啥的汇编要先进入SVC模式,超级管理员特权模式,这样就可以访问所有寄存器了,需要用到cpsr寄存器 0到4位要设置svc模式10011 = 0x13, ...

  7. 力扣 - 剑指 Offer 55 - I. 二叉树的深度

    题目 剑指 Offer 55 - I. 二叉树的深度 思路1(DFS) 后续遍历吧,先遍历到最深(递归到末尾返回0),然后从后面一步一步比较取大的值返回,每次返回层数都加1, 执行流程是怎样的:比如其 ...

  8. vue 3 学习笔记 (七)——vue3 中 computed 新用法

    vue3 中 的 computed 的使用,由于 vue3 兼容 vue2 的选项式API,所以可以直接使用 vue2的写法,这篇文章主要介绍 vue3 中 computed 的新用法,对比 vue2 ...

  9. layui的入门使用

    1.如果使用单独的layui插件的话需要先引入jquery的插件,官方建议1.8+的版本. 2.引入后就能根据规则正常使用了.

  10. [AGC002D] Stamp Rally

    确实有想到重构树,不过没有继续下去的思路. 可能是对重构树的性质不太懂. 这种题目我们可以二分答案,考虑怎么\(check\)呢,整体二分+并查集,建出重构树,找去第一个小于这个数的方点,查询他的子树 ...