日期:2014-05-17  浏览次数:20787 次

servlet向jsp传递list的问题!
因为数据库查出来的结果是几行几列,我不知道怎么处理,只好用add到list里面,然后在add到list里面!
servlet代码如下: 

  List<Object> listhuida = new ArrayList<Object>(); 

while (rs.next()) 

  List<String> list1=new ArrayList<String>();

  for(int i=1;i<=colCount;i++)
  {
list1.add(rs.getString(i));
  }
listhuida.add(list1);
}
jsp接收以后取值代码如下:
List list1=(List)request.getAttribute("xianshi");
List list2=(List)list1.get(0);
List list3=(List)list1.get(1);
System.out.println(list2.size());
for(int a=0;a<list2.size();a++)
  out.println(list2.get(a));
for(int b=0;b<list3.size();b++)
  out.println(list3.get(b));
效果是可以达到的,但是这个代码和逻辑过程很繁琐,有没有其他方式实现或者我那地方可以更改下,减少这个代码和逻辑过程,因为这样的情况会出现在很多地方。

 

------解决方案--------------------
用struts2
------解决方案--------------------
用JSTL标签吧。、会简单很多、
------解决方案--------------------
探讨

引用:
用struts2


引用:
用JSTL标签吧。、会简单很多、


你们说的东西我都不会,我现在就会最简单的代码。框架没学!

------解决方案--------------------
sturts2 啊,ognl表达式简化不少
------解决方案--------------------
几行几列~~
何不建一个实体类,把每一行作为一个对象存到list中,用起来多方便
------解决方案--------------------
晕死 当年 貌似我也是这样写代码的 。。。
------解决方案--------------------
用json
------解决方案--------------------
对呀,尽量用json.
------解决方案--------------------
标签<c:forEach items="list1" var="onecol" varStatus="status">

需要引入<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>