if (sqlRst != null)
                      {
                      int i = 0;
                       while (sqlRst.next()){
                        String[] sList = new String[2];//放到这里,
                       product_kind=sqlRst.getString ("product_kind");
                       product_kind_name=sqlRst.getString ("product_kind_name");
                       sList[0]=product_kind;
                       sList[1]=product_kind_name;
                       out.print(sList[0]+sList[1]);//可以打印所有记录
                       list.add(sList);
                   
                        }
                       }
                     
                   String[] temp = new String[2];                  for (int i = 0; i < list.size(); i++) 
                  {
                    temp = (String[])list.get(i);
                    out.print(temp[0]+temp[1]);//只能打印最后一条记录
                  }你以前放的都是一个对象,在每次循环的时候要重新定义一个对象。

解决方案 »

  1.   

    你在循环里不停的改变sList的值,当然最后只能打印最后一条记录,前面应该 这样写.
    String[] sList = null;
                        if (sqlRst != null)
                          {
                          int i = 0;
                           while (sqlRst.next()){
                           sList = new String[2];
                           product_kind=sqlRst.getString ("product_kind");
                           product_kind_name=sqlRst.getString ("product_kind_name");
                           sList[0]=product_kind;
                           sList[1]=product_kind_name;
                           out.print(sList[0]+sList[1]);//可以打印所有记录
                           list.add(sList);
                       
                            }
                           }