java的while匹配语句_java while(rs.next()){}只执行一次?sql语句查过数据为601条,输出Resultset为601条。详见内容...

本文介绍了一个用于查询自行车站点信息的方法,包括站点的借出和归还自行车数量、站点位置等详细信息。通过数据库操作,实现了对各站点一天内的自行车流动情况的统计。

1 //查询所有站点一天内自行车借出数目和归还数目、剩余自行车数目、站点名称、站点编号

2 public ListQueryStationInfo(){3 List stationInfolist = new ArrayList();4

5 String sql="select distinct stationId,stationName,stationlon,stationlat from station Order by stationId ASC";6 dbh = newDBHelper(sql);7 try{8 rs = dbh.ps.executeQuery(sql);//执行语句,得到结果集

9 //rs.last();//到ResultSet最后一行 调试时注释了

10 //System.out.println(rs.getRow());//最后一行的RowId为601

11

12 while(rs.next()){13 System.out.println(rs.getRow());14 //if( (rs.getString("stationlon")!=null)15 //&&(rs.getString("stationlat")!=null) ){

16

17 int iStationId = Integer.parseInt(rs.getString("stationId"));18 String StationName = rs.getString("stationName");19 float Stationlon = Float.parseFloat(rs.getString("stationlon"));20 float Stationlat = Float.parseFloat(rs.getString("stationlat"));21 float lendNum = QueryNumOfLend(iStationId); //获得一天内该站点借出自行车数目

22 float returnNum = QueryNumOfReturn(iStationId); //获得一天内该站点借出自行车数目

23 float leftNum = (float)(INITIAL_VALUE - lendNum + returnNum); //剩余自行车数目

24 /*System.out.println("iStationId:" + iStationId);25 System.out.println("StationName:" + StationName);26 System.out.println("Stationlon:" + Stationlon);27 System.out.println("Stationlat:" + Stationlat);28 System.out.println("lendNum:" + lendNum);29 System.out.println("returnNum:" + returnNum);30 System.out.println("leftNum:" + leftNum);*/

31

32 stationInfo stationinfo = newstationInfo();

34 stationinfo.setStationId(iStationId);35 stationinfo.setStationName(StationName);36 stationinfo.setStationlat(Stationlat);37 stationinfo.setStationlon(Stationlon);38 stationinfo.setInvitialNum(INITIAL_VALUE);39 stationinfo.setStationReturnNum(returnNum);40 stationinfo.setStationLendNum(lendNum);41 stationinfo.setLeftNum(leftNum);42 stationInfolist.add(stationinfo);43 //}

44 }45 for(stationInfo book : stationInfolist){46 System.out.println(book.getStationId());47 System.out.println(book.getStationlat());48 System.out.println(book.getStationLendNum());49

50 }51 //rs.close();52 //dbh.close();//关闭连接

53 } catch(Exception e){54 e.printStackTrace();55 }56 returnstationInfolist;57 }58

59 //++根据用户所选择的站点编号 查询一天内 该站点 自行车借出数目

60 public float QueryNumOfLend(intiStationId){61 float iRecordNum = 0;62 String sql="select * from record where stationGoId ="+iStationId;63 dbh =newDBHelper(sql);64 try{65 rs = dbh.ps.executeQuery(sql);//执行语句,得到结果集

66 while(rs.next()){67 iRecordNum += 1;68 }69 System.out.println(iRecordNum);70 //rs.close();71 //dbh.close();//关闭连接

72 } catch(Exception e) {73 e.printStackTrace();74 }75 returniRecordNum;76 }77

78 //++根据用户所选择的站点编号 查询一天内 该站点 自行车归还数目

79 public float QueryNumOfReturn(intiStationId){80 float iRecordNum = 0;81 String sql="select * from record where stationBackId ="+iStationId;82 dbh = newDBHelper(sql);83 try{84 rs = dbh.ps.executeQuery(sql);//执行语句,得到结果集

85 while(rs.next()){86 iRecordNum += 1;87 }88 System.out.println(iRecordNum);89 //rs.close();90 //dbh.close();//关闭连接

91 } catch(Exception e) {92 e.printStackTrace();93 }94 returniRecordNum;95 }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值