我用jdbc连接数据库,想逐条操作记录
           
方法一:
if(rs.next())
{...}方法二:while(rs.next())
{...}方法三:
boolean T=true;
L:
while(T)
{
  if(rs.next())
  {  ...
  
  }
  break L;
}把上面三种方法依次写到try{}里,如
try{ 方法一; }
catch(Exception e)
{
 out.println("捕获到异常:"+e.getMessage());
}
可以肯定第一种不行,因为他只执行一次,是个判断语句,没有循环,
方法二和三是按要求完成了操作,可是程序在该jsp页面捕获到异常
"捕获到异常:null",没有正常显示操作完成的静态内容.
请问这到底是什么原因呢?有什么办法可以不捕获该异常,但其他异常可以捕获,或者用别的方法可以实现既循环执行了,有没有产生异常呢?请高手指点...

解决方案 »

  1.   

    <%try{      int[] ss=new int[50];
                String rsql="select * from T_M"; 
                myDBBean my = new myDBBean();
       my.setConnection();
       my.setQuerystatement(rsql);
       ResultSet rs=my.getResult();
       rs.first();
       rs.previous();
           while(rs.next()) //一条记录
           {  
             String rss=rss.getString("a");       
             String us=rss.getString("b");
             int i=0;
             int y=0;
            if(rss.length()>0)
           { 
                       ...
            for(i=0;i<mystr.length;i++)
             { 
                ...
             }
           }
           
                      
               int z=0;
               L1:
               while(z<y)    
               {        
                  if(...)
                  {
                    break L1;
                  }
                  else
                  z++;
               }
                    for(...)
                   {  
                     ...
                     if(rolRst.next())
                     { ...
                       while(...)
                      {
                       ...
                      }
                      String sqlup="...";
                      operateDBBean mydb = new operateDBBean();
                      mydb.setConnection();
                      mydb.setQuerystatement(sqlup);
             mydb.updateRecord();  
                    }
                   } //for
             }//while
    静态内容
    ...
    <%}
    catch(Exception e)
    {
     out.println("捕获到异常:"+e.getMessage());
    }
      

  2.   

    <%}
    catch(Exception e)
    {
     out.println("捕获到异常:"+e.getMessage());
    }
    %>
    更正.
    忧郁内容繁杂,只将出错帖出.
      

  3.   

    <%try{      int[] ss=new int[50];
                String rsql="select * from T_M"; 
                myDBBean my = new myDBBean();
       my.setConnection();
       my.setQuerystatement(rsql);
       ResultSet rs=my.getResult();
       rs.first();
       rs.previous();
           while(rs.next()) //一条记录
           {  
             String rss=rss.getString("a");       
             String us=rss.getString("b");
             int i=0;
             int y=0;
            if(rss.length()>0)
           { 
                       ...
            for(i=0;i<mystr.length;i++)
             { 
                ...
             }
           }
           
                      
               int z=0;
               L1:
               while(z<y)    
               {        
                  if(...)
                  {
                    break L1;
                  }
                  else
                  z++;
               }
                    for(...)
                   {  
                     ...
                     if(rolRst.next())
                     { ...
                       while(...)
                      {
                       ...
                      }
                      String sqlup="...";
                      operateDBBean mydb = new operateDBBean();
                      mydb.setConnection();
                      mydb.setQuerystatement(sqlup);
             mydb.updateRecord();  
                    }
                   } //for
             }//while%>
    静态内容
    ...
    <%}
    catch(Exception e)
    {
     out.println("捕获到异常:"+e.getMessage());
    }
    %>
    重发,太粗心了...
      

  4.   

    看得我头好大好大String rss=rss.getString("a");  
    这里的rss是什么啊,等号两边都有rss有没有问题.