CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  J2SE / 基础类

求一段数据库结果集保存到ArrayList的写法?在线等~帮顶有分

楼主xiyiren(深蓝)2004-11-04 19:38:03 在 Java / J2SE / 基础类 提问

结果集结构是这样  
  iFrame   iPort  
  0                 1  
  0                 3  
  0                 5  
  0                 6  
  1                 2  
  1                 3  
  1                 5  
  2                 1  
  2                 2  
  2                 3  
  2                 4  
  ....  
  ...  
  ..  
  现在我要将这个结果集保存到ArrayList中  
  ArrayList   dataList   =   new   ArrayList();    
  dataList.add(Data)   Data是一个bean   要把数据set进去  
  但是要多个port对应一个frame这样来放.就是get数据时要一个frame和一个port数组对应  
  请教各位大虾了  
  问题点数:55、回复次数:8Top

1 楼windinring(小鱼儿)回复于 2004-11-04 20:11:30 得分 0

说的不清楚啊,再说明白点  
  Top

2 楼xiyiren(深蓝)回复于 2004-11-04 20:28:32 得分 0

bean里边有两个属性   String   frame   和String[]   port  
  要把结果集里的iFrame   Set给frame   与frame对应的port   Set给port[]这个数组Top

3 楼xiyiren(深蓝)回复于 2004-11-04 21:08:13 得分 0

没人帮看看吗?Top

4 楼chenxb1980(倾听)回复于 2004-11-04 22:02:44 得分 0

循环判断是否有  
   
  比如  
   
  List   list=new   ArrayList();  
  rs.next(){  
  String   frame   =   rs.getString(1);  
  String   port   =   rs.getString(2);  
   
  if   (list.size()>0){  
  int   size   =   list.size();  
  for(int   i=0;i<size;i++){  
  String   frametemp   =((bean)list.get(i)).getFrame();  
  if(frametemp.equals(frame)){  
  ****自己写  
  }else{  
  bean   be   =   new   bean();  
  bean.setFrame(frame);  
  bean.setPort(port);//自己写  
  }  
  }  
  }  
  }  
  }  
  大体就这样Top

5 楼chenxb1980(倾听)回复于 2004-11-04 22:04:57 得分 25

List   list=new   ArrayList();  
  rs.next(){  
  String   frame   =   rs.getString(1);  
  String   port   =   rs.getString(2);  
   
  if   (list.size()>0){  
  int   size   =   list.size();  
  for(int   i=0;i<size;i++){  
  String   frametemp   =((bean)list.get(i)).getFrame();  
  if(frametemp.equals(frame)){  
  ****自己写  
  }else{  
  bean   be   =   new   bean();  
  bean.setFrame(frame);  
  bean.setPort(port);//自己写  
  list.add(bean);  
  }  
  }  
  }  
  }  
  }  
  Top

6 楼jamesfancy(▲) 边城狂人 <Java|C++] (★)回复于 2004-11-04 22:23:11 得分 10

用   ArrayList   包装每个相同   frame   的   data  
  再用一个   HashMap   或者   HashTable   来装这些   ArrayList,如  
  HashMap   all   =   new   ......  
  ArrayList   a   =   new   ........  
  a.add(new   Data(frame,   port))  
  ...  
  当把   frame   为0的   add   完了之后  
   
  all.put(new   Integer(frame),   a);         //   因为   a   里面都是   frame   相同的   data,所以用   frame   做关键字    
   
  然后循环,把其它的也这样放在   all   中  
   
  以后只需要用   all   来取数据就行了。  
  如    
  ArrayList   aa   =   (ArrayList)   all.get(new   Integer(0))  
  就会取出一个包含所有   frame   为0的data的arraylistTop

7 楼xiyiren(深蓝)回复于 2004-11-04 23:06:52 得分 0

倾听兄能否再看一下,if   (list.size()>0)  
  list.size初始就是0,根本进不去循环啊?  
  Top

8 楼shangyongjun(小石头)回复于 2004-11-05 09:56:42 得分 20

这是我以前写的代码:  
  你看看  
   
  也许对你解决这个问题有帮助  
   
  public   Collection   getMessage()throws   Exception  
  {  
  Collection   ret=new   ArrayList();  
  try  
  {  
  Statement   stm=con.createStatement();  
  ResultSet   result=stm.executeQuery("select   count(*)   from   message");  
  int   message_count=0;  
  if(result.next())  
  {  
  message_count=result.getInt(1);  
  result.close();  
  }  
  if(message_count>0)  
  {  
  result=stm.executeQuery("select   *   from   message   order   by   time   desc");  
   
  while(result.next())  
  {    
  String   title=result.getString("title");  
  String   name=result.getString("name");  
  String   mail=result.getString("mail");  
  String   content=result.getString("content");  
  java.sql.Date   date=result.getDate("time");  
  MessageVO   message=new   MessageVO();  
  message.setName(name);  
  message.setTitle(title);  
  message.setContent(content);  
  message.setDate(date);  
  message.setEmail(mail);  
  ret.add(message);  
  }  
  result.close();  
  stm.close();  
  }  
   
  con.close();  
   
  }  
  catch(Exception   e)  
  {  
  e.printStackTrace();  
   
  }  
           
          }Top

相关问题

  • 数据库保存报错
  • 怎样在VB中保存数据库?
  • 在数据库中保存bmp字段
  • 数据库中如何保存路径
  • 文本文件保存到数据库?
  • 保存图片至数据库
  • 保存日期到数据库?
  • 保存文件到数据库问题
  • 数据库保存图片的问题
  • 文件保存到数据库问题

关键词

  • date
  • arraylist
  • stm
  • getstring
  • 结果集
  • frame
  • message
  • result
  • port
  • mail

得分解答快速导航

  • 帖主:xiyiren
  • chenxb1980
  • jamesfancy
  • shangyongjun

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo