首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

在两个页面间传递整数数组的值的有关问题

2012-02-14 
在两个页面间传递整数数组的值的问题我找的一个例子,StringName[]{kucao,oldmouse,smallBird}sess

在两个页面间传递整数数组的值的问题
我找的一个例子,
String Name[] = {"kucao","oldmouse","smallBird"};  
session.setAttribute("sessionName",Name); 
然后在另一个页面,接收
String[] data = (String[])session.getAttribute("sessionName");  
for(int j=0;j<data.length;j++)  
out.println(data[j]);

这个例子没有问题,但是我的具体情况是需要传递整数数组,所以模仿如下:

Integer[] xxbh= new Integer[5];

Statement smt1=con.createStatement();
ResultSet rs1;
String sql1;
sql1 = "select * from xzt where tmbh='"+tmbh+"'";
rs1 = smt1.executeQuery(sql1);

for(int i=0;i<5;i++){
while(rs1.next()){
xxbh[i]=rs1.getInt("xxbh");
}
}

session.setAttribute("xxbh",xxbh);

接收
Integer[] xxbh=(Integer[])session.getAttribute("xxbh");
for(int i=0;i<5;i++){
out.println(xxbh[i]);}

运行结果,只传递了上个页面最后一个值,其他为空,如:34 null null null null



[解决办法]
算法很有问题,很基础的错误。永远只能取得最后一个值。
for(int i=0;i <5;i++){ 
while(rs1.next()){ 
xxbh[i]=rs1.getInt("xxbh"); 


改成

int i = 0;
while(rs1.next){
xxbh[i]=rs1.getInt("xxbh");
i++;
if( i == 5) break;
}




[解决办法]
楼上的正解,只是rs1.next漏了()

热点排行