一、映射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. Linux内核内存检测工具KASAN

    KASAN 是 Kernel Address Sanitizer 的缩写,它是一个动态检测内存错误的工具,主要功能是检查内存越界访问和使用已释放的内存等问题.KASAN 集成在 Linux 内核中,随 ...

  2. Java 中的关键字

    Java 中有多少个关键字,有大小写之分吗? Java 中有 48 个关键字在使用 + 两个保留关键字未使用,共 50 个关键字. Java 关键字全部都由是小写组成. Java 中保留关键字分别是哪 ...

  3. selenium的 元素定位、元素信息、交互

    selenium的元素定位? 元素定位:自动化要做的就是模拟鼠标和键盘来操作来操作这些元素,点击.输入等等.操作这些元素前首先 要找到它们,WebDriver提供很多定位元素的方法 方法: 1.fin ...

  4. Centos上安装MongoDB4.X

    一.下载并解压MongoDB 1.下载MongoDB 取件码w2px 2.通过ftp软件上传的服务器上,我的位置:/root/softwares 3.解压并放在opt文件夹下:tar zxvf mon ...

  5. C++内存管理剖析

    C++内存管理 C++中有四种内存分配.释放方式: 最高级的是std::allocator,对应的释放方式是std::deallocate,可以自由设计来搭配任何容器:new/delete系列是C++ ...

  6. RocketMq报错 Java HotSpot(TM) Server VM warning:

    Java HotSpot(TM) Server VM warning: Using the DefNew young collector with the CMS collector is depre ...

  7. vue指令v-for报错:Elements in iteration expect to have 'v-bind:key' directives.eslint-plugin-vue

    文件–>首选项–>设置–>在搜索框中输入:vetur.validation.template,取消勾选.

  8. 7.4 k8s结合ceph rbd、cephfs实现数据的持久化和共享

    1.在ceph集群中创建rbd存储池.镜像及普通用户 1.1.存储池接镜像配置 创建存储池 root@u20-deploy:~# ceph osd pool create rbd-test-pool1 ...

  9. 最强最全面的Hive SQL开发指南,超四万字全面解析

    本文整体分为两部分,第一部分是简写,如果能看懂会用,就直接从此部分查,方便快捷,如果不是很理解此SQL的用法,则查看第二部分,是详细说明,当然第二部分语句也会更全一些! 第一部分: hive模糊搜索表 ...

  10. Codeforces 632F - Magic Matrix(暴力 bitset or Prim 求最小生成树+最小瓶颈路)

    题面传送门 开始挖老祖宗(ycx)留下来的东西.jpg 本来想水一道紫题作为 AC 的第 500 道紫题的,结果发现点开了道神题. 首先先讲一个我想出来的暴力做法.条件一和条件二直接扫一遍判断掉.先将 ...