点击这里给我发消息 点击这里给我发消息

struts框架中实现多行表单提交

添加时间:2013-12-7
    相关阅读: HTML 框架

在struts框架中常常会遇到多行表单的情况, 如何有效的利用struts框架提供的自动收集机制来处理呢? 这里提供一个简便的方法.
可以用List来解决这个问题. List中的每一个元素都是一个有效的对象.
例如:
Class ... TestBean ...{
private List test = new ArrayList();
...
...
public Lisg getTest(){....}
}
其中test List中的每一个元素又是一个SubTestBean
Class ... SubTestBean{
private int id;
private String name;
get...(){}
set...(...){}
}
这样我们在定义多个行的时候便可以如此处理(假设testbean已经放在request中):




这样信息便会自动显示, 但是现在还不能够自动收集, 如何才能正确回收呢?
要求在test List 上做一点手脚, 继承一个ArrayList, 覆盖它的get(i)方法
例如:
class TestArrayList extends ArrayList {

/*
* (non-Javadoc)
*
* @see java.util.List#get(int)
*/
public Object get(int index) {
while (index >= size()) {
add(new SubTestBean());
}
return super.get(index);
}
}

然后我们把TestBean中的 private List test = new ArrayList();
替换为 private List test = new TestArrayList ();
这样就能自动收集了.

咨询热线:020-85648757 85648755 85648616 0755-27912581 客服:020-85648756 0755-27912581 业务传真:020-32579052
广州市网景网络科技有限公司 Copyright◎2003-2008 Veelink.com. All Rights Reserved.
广州商务地址:广东省广州市黄埔大道中203号(海景园区)海景花园C栋501室
= 深圳商务地址:深圳市宝源路华丰宝源大厦606
研发中心:广东广州市天河软件园海景园区 粤ICP备05103322号 工商注册