Result.next()只会在两种情况发生异常:一是数据库本身故障,二是已经关闭。
而在你的程序中只是为了防止出现一个异常不影响其它的,那么可以假定了,前面的访问是正确的。所以,第一个异常原因不可能出现的。而你不会自己主动在另一个线程关闭数据库吧?那么第二个异常原因也不可能出现。
所以,这个异常捕获了,不必做任何处理,直接进行下一个就行。
while(rs.next()){
try{
//..........
}
catch(SQLException ex){}
}
boolean flag = false;
try{
flag = rs.next();
}catch(SomeException e){....}
while(flag){
try{
//....do something you need
flag = rs.next();
}catch(SomeException e){.....}
}
你可以这样做,主要思路就是及时处理抛出的异常就可以了。
上面的代码只是按照你的思路来写的,不过这样做的意义不大吧?
没意义,出了异常以后还继续执行,你不害怕啊?企业级应用这么写你会被老板骂死的
把可能抛异常的代码段放在try/catch里。
看这样行不行
while(rs.next){
try{
}catch(Exception e){
}
}