您的位置:首页 > 编程语言 > Java开发

Struts2框架action传入页面list对象集合,修改对象集合数据后提交给action

2017-06-22 09:13 483 查看
我们最常见的就是在页面遍历一个集合,每次只能操作一条数据。今天就教大家同时修改多条数据的方法:

首先,在action中定义对象list集合,并设置get,set方法,例如:

private List<Tongpei> tplist;

public List<Tongpei> getTplist() {

        return tplist;

    }

 public void setTplist(List<Tongpei> tplist) {

        this.tplist = tplist;

    }

其次在某个方法中接收数据库数据,例如

tplist=tPdhEbi.getall(as.getStorecode(), tp.getFlid());

传入jsp页面

ActionContext.getContext().put("tplist", tplist);

在页面接收数据

 <c:forEach items="${tplist}" var="list" varStatus="varStatus" step="1">

 <input type="hidden" name="tplist[${varStatus.index}].tid" value="${list.tid}"/> 对象id必须有,因为我们修改数据先通过id查出来该对象在修改

            <td ><font size="1">${varStatus.index+1}</font></td>

           <td><font size="2">${list.code }</font></td>

           <td><font size="2">${list.name}</font></td>

           <td bgcolor="#C1FFC1">${list.saleQty7 }</td>

           <td bgcolor="#C1FFC1">${list.saleQty6 }</td>

 <td  ><input type="text" name="tplist[${varStatus.index}].jydhl" value="${list.jydhl }" size="2"/></td>

 </c:forEach> 

大家应该注意到了,需要修改的数据列,或者隐藏属性用input标签,name是提交给action中对象属性的值value,此时我们的提交表单接收数据是集合,也就不会因为多个相同属性报错。

在action中接收数据方法直接修改数据

for(Tongpei t:tplist){  //tplist有get,set方法,提交表单此时已有数据,遍历每一个对象进行修改

               tPdhEbi.baocun(t);//修改订单的方法

            }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐