绑定数组

需求

在商品列表页面选中多个商品,然后删除。

需求分析

此功能要求商品列表页面中的每个商品前有一个checkbook,选中多个商品后点击删除按钮把商品id传递给Controller,根据商品id删除商品信息。

Jsp中实现:

<c:forEach items="${itemList }" var="item">

<tr>

<td><input name="ids" value="${item.id}" type="checkbox"></td>

<td>${item.name }</td>

<td>${item.price }</td>

<td><fmt:formatDate value="${item.createtime}" pattern="yyyy-MM-dd HH:mm:ss"/></td>

<td>${item.detail }</td>

<td><a href="${pageContext.request.contextPath }/itemEdit.action?id=${item.id}">修改</a></td>

</tr>

</c:forEach>

生成html代码如下:

页面选中多个checkbox向controller方法传递

<table width="100%" border=1>

<tr>

<td>商品名称</td>

<td>商品价格</td>

<td>生产日期</td>

<td>商品描述</td>

<td>操作</td>

</tr>

<tr>

<td><input name="ids" value="1" type="checkbox"></td>

<td>台式机</td>

<td>3000.0</td>

<td>2016-02-03 13:22:53</td>

<td></td>

<td><a href="/springmvc-web/itemEdit.action?id=1">修改</a></td>

</tr>

<tr>

<td><input name="ids" value="2" type="checkbox"></td>

<td>笔记本</td>

<td>6000.0</td>

<td>2015-02-09 13:22:57</td>

<td></td>

<td><a href="/springmvc-web/itemEdit.action?id=2">修改</a></td>

</tr>

<tr>

<td><input name="ids" value="3" type="checkbox"></td>

<td>背包</td>

<td>200.0</td>

<td>2015-02-06 13:23:02</td>

<td></td>

<td><a href="/springmvc-web/itemEdit.action?id=3">修改</a></td>

</tr>

</table>

Controller

Controller方法中可以用String[]接收,或者pojo的String[]属性接收。两种方式任选其一即可。

定义如下:

@RequestMapping("/queryitem")

public String queryItem(QueryVo queryVo, String[] ids) {

System.out.println(queryVo.getItems().getName());

System.out.println(queryVo.getItems().getPrice());

System.out.println(ids.toString());

return null;

}

或者:

查看结果:

将表单的数据绑定到List

需求

实现商品数据的批量修改。

需求分析

要想实现商品数据的批量修改,需要在商品列表中可以对商品信息进行修改,并且可以批量提交修改后的商品数据。

接收商品列表的pojo

List中存放对象,并将定义的List放在包装类中,使用包装pojo对象接收。

Jsp改造

页面定义如下:

<tr><td><input type="text" name=" itemsList[0].id" value="${item.id}"/></td><td><input type="text" name=" itemsList[0].name" value="${item.name }"/></td><td><input type="text" name=" itemsList[0].price" value="${item.price}"/></td></tr><tr><td><input type="text" name=" itemsList[1].id" value="${item.id}"/></td><td><input type="text" name=" itemsList[1].name" value="${item.name }"/></td><td><input type="text" name=" itemsList[1].price" value="${item.price}"/></td></tr>

  

Name属性必须是包装pojo的list属性+下标+元素属性。Jsp做如下改造:

<c:forEach items="${itemList }" var="item">

<tr>

<td><input name="ids" value="${item.id}" type="checkbox"></td>

<td>

<input name="id" value="${item.id}" type="hidden">

<input name="name" value="${item.name }" type="text">

</td>

<td><input name="name" value="${item.price }" type="text"></td>

<td><input name="name" value="<fmt:formatDate value="${item.createtime}" pattern="yyyy-MM-dd HH:mm:ss"/>" type="text"></td>

<td><input name="name" value="${item.detail }" type="text"></td>

<td><a href="${pageContext.request.contextPath }/itemEdit.action?id=${item.id}">修改</a></td>

</tr>

</c:forEach>

varStatus属性常用参数总结下:

${status.index}      输出行号,从0开始。

${status.count}      输出行号,从1开始。

${status.current}   当前这次迭代的(集合中的)项

${status.first}  判断当前项是否为集合中的第一项,返回值为true或false

${status.last}   判断当前项是否为集合中的最后一项,返回值为true或false

begin、end、step分别表示:起始序号,结束序号,跳跃步伐。

转载于:https://www.cnblogs.com/lifeibai/p/9037251.html

SpringMVC-高级参数绑定相关推荐

  1. (转)SpringMVC学习(六)——SpringMVC高级参数绑定与@RequestMapping注解

    http://blog.csdn.net/yerenyuan_pku/article/details/72511749 高级参数绑定 现在进入SpringMVC高级参数绑定的学习,本文所有案例代码的编 ...

  2. 【SSM - SpringMVC篇】03 - SpringMVC的参数绑定 - 参数自动绑定 - javabean对象参数绑 - 嵌套bean参数绑定

    文章目录 SpringMVC的参数绑定 1 传统方式进行参数传递 2 通过SpringMVC的参数绑定实现[***用这个就行] 2.1 SpringMVC的基本数据类型的参数绑定 2.1.1 方法形式 ...

  3. SpringMvc之参数绑定注解详解

    在 SpringMVC 中,提交请求的数据是通过方法形参来接收的.从客户端请求的 key/value 数据,经过参数绑定,将 key/value 数据绑定到 Controller 的形参上,然后在 C ...

  4. springmvc(三) 参数绑定、

    前面两章就介绍了什么是springmvc,springmvc的框架原理,并且会简单的使用springmvc以及ssm的整合,从这一章节来看,就开始讲解springmvc的各种功能实现,慢慢消化 --W ...

  5. SpringMVC学习--参数绑定

    spring参数绑定过程 从客户端请求key/value数据,经过参数绑定,将key/value数据绑定到controller方法的形参上.springmvc中,接收页面提交的数据是通过方法形参来接收 ...

  6. (转)SpringMVC学习(五)——SpringMVC的参数绑定

    http://blog.csdn.net/yerenyuan_pku/article/details/72511611 SpringMVC中的参数绑定还是蛮重要的,所以单独开一篇文章来讲解.本文所有案 ...

  7. SpringMvc之参数绑定注解详解之一

    引言: 前段时间项目中用到了REST风格来开发程序,但是当用POST.PUT模式提交数据时,发现服务器端接受不到提交的数据(服务器端参数绑定没有加 任何注解),查看了提交方式为application/ ...

  8. SpringMvc自定义参数绑定

    2019独角兽企业重金招聘Python工程师标准>>> 问题:在SpringMvc中的参数绑定中,pojo对象中的日期成员变量往往不能被绑定在方法的参数中,因此为了让前台传入的日期数 ...

  9. 高级参数绑定(数组和List绑定)

    1.绑定数组: (1) 需求 在商品列表页面选中多个商品,然后删除. (2). 需求分析 功能要求商品列表页面中的每个商品前有一个checkbok,选中多个商品后点击删除按钮把商品id传递给Contr ...

  10. SpringMVC之Controller和参数绑定

    在上一篇Spring+SpringMVC+Mybatis整合中说到了SSM的整合,并且在其中添加了一个简单的查询功能,目的只是将整个整合的流程进行一个梳理,下面在上一篇中工程的基础上再说一些关于Spr ...

最新文章

  1. linux下java进程占用高问题分析过程
  2. SSL 握手协议详解
  3. AtCoder AGC038F Two Permutations (网络流、最小割)
  4. ubuntu下vim的命令及使用方法
  5. 【读书笔记】沉默的大多数
  6. cnetos6.2搭建mysql_基于腾讯云的Centos6.2系统搭建Apache+Mysql+PHP开发环境
  7. Js+Css打造的红色经典伸缩菜单代码
  8. Asp.Net在导入外部脚本
  9. 云原生全景图之六 | 托管 Kubernetes 和 PaaS 解决什么问题
  10. [转]转一篇不错的文章:ORM 在电子商务系统中的应用
  11. 【数据分析就业实战】——缺失值的常见处理方法
  12. C#网络编程概述 二
  13. 一个 8 岁的“前端老人”
  14. 【LA4728】Square(求凸包(多边形)直径----旋转卡壳)
  15. Ubuntu18.04中安装virtualenv和virtualenvwrapper
  16. 网页扫雷html css js,HTML+CSS+JS实现WIN7扫雷(中)
  17. BP算法简单推导过程
  18. 第八届全国噪声与振动控制工程学术会议大会报告
  19. 老师必备的数学几何绘图软件,赶紧收藏!
  20. 形如in (‘111,222,333‘) 的 ,Oracle的in函数(报错:无效数字)

热门文章

  1. xinit启动X Window System过程初探(转)
  2. CB Insight公布32家全球AI独角兽,中国10家入围
  3. 全球高校CS实力最新排行:清华AI界第二,中科院视觉领域最强
  4. 亚马逊+纽约大学开源图神经网络框架DGL:新手友好,与主流框架无缝衔接
  5. 我没让机器人变身,它自己就变了 | Science Robotics
  6. 50年间,高水平论文数量国家排名是怎样变化的?| 可视化数据
  7. 打字方式异于常人,可能脑子有病丨AI研究
  8. 提到强化学习只知道AlphaGo?其实,RL在工业界还有这些应用
  9. TensorFlow教程之API DOC 6.3.10. NN
  10. Hadoop-2.6.0NodeManager Restart Recover实现分析(一)