zoukankan      html  css  js  c++  java
  • springMVC数组参数绑定

    1.1. 绑定数组

    1.1.1. 需求

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

    1.1.2. 需求分析

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

    我们演示可以获取id的数组即可

    1.1.1. Jsp修改

    修改itemList.jsp页面,增加多选框,提交urlqueryItem.action

    <form action="${pageContext.request.contextPath }/queryItem.action" method="post">

    查询条件:

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

    <tr>

    <td>商品id<input type="text" name="item.id" /></td>

    <td>商品名称<input type="text" name="item.name" /></td>

    <td><input type="submit" value="查询"/></td>

    </tr>

    </table>

    商品列表:

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

    <tr>

    <td>选择</td>

    <td>商品名称</td>

    <td>商品价格</td>

    <td>生产日期</td>

    <td>商品描述</td>

    <td>操作</td>

    </tr>

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

    <tr>

    <td><input type="checkbox" name="ids" value="${item.id}"/></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>

    </table>

    </form>

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

    本身属于一个form表单,提交url是queryItem.action 

    1.1.1. Controller

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

    定义QueryVo,如下图:

    图片

    ItemController修改queryItem方法:

    /**

     * 包装类型 绑定数组类型,可以使用两种方式,pojo的属性接收,和直接接收

     *

     * @param queryVo

     * @return

     */

    @RequestMapping("queryItem")

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

    System.out.println(queryVo.getItem().getId());

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

    System.out.println(queryVo.getIds().length);

    System.out.println(ids.length);

    return "success";

    }
    --------------------------------------------------------------

  • 相关阅读:
    LVS的持久连接、会话保持和高可用介绍
    lvs整理
    ubuntu 12.04 下LVS的一些搭建心得和资料整理
    Ubuntu下配置LVS【h】
    关于vector push_back()与其他方式读取数据的效率对比(转)
    强大的vim配置文件,让编程更随意(转)
    E492: Not an editor command: ^M
    Building Vim from source(转)
    误删 libc.so.6的解决方法(转)
    CentOS安装glibc-2.14(转)
  • 原文地址:https://www.cnblogs.com/MAPO/p/8467938.html
Copyright © 2011-2022 走看看