我的程序中设定了 Thread.sleep(1000)
怎么程序过了16秒又重新执行啦 会出现好多个"8833 connect false"
是怎么回事呀,请说明一下,谢谢
private void init8833DS() {
DS8833 = new BasicDataSource();
DS8833.setDriverClassName("oracle.jdbc.driver.OracleDriver");
DS8833.setUsername(dbMessages.getString("8833.username"));
DS8833.setPassword(dbMessages.getString("8833.password"));
DS8833.setUrl(dbMessages.getString("8833.url")); Connection con = null; while(true) {
try {
con=DS8833.getConnection();
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("select sysdate from dual");
//测试连接。未报异常,连接正常
rs.close();
stmt.close();
System.out.println("8833 connect successfully");
break; } catch (SQLException e1) {
//e1.printStackTrace();
System.out.println("8833 connect false");
try {
Thread.sleep(1000);
} catch (InterruptedException ex1) {
}
} finally {
if (con != null)
try {
con.close();
} catch (SQLException ex) {
}
}
} }
怎么程序过了16秒又重新执行啦 会出现好多个"8833 connect false"
是怎么回事呀,请说明一下,谢谢
private void init8833DS() {
DS8833 = new BasicDataSource();
DS8833.setDriverClassName("oracle.jdbc.driver.OracleDriver");
DS8833.setUsername(dbMessages.getString("8833.username"));
DS8833.setPassword(dbMessages.getString("8833.password"));
DS8833.setUrl(dbMessages.getString("8833.url")); Connection con = null; while(true) {
try {
con=DS8833.getConnection();
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("select sysdate from dual");
//测试连接。未报异常,连接正常
rs.close();
stmt.close();
System.out.println("8833 connect successfully");
break; } catch (SQLException e1) {
//e1.printStackTrace();
System.out.println("8833 connect false");
try {
Thread.sleep(1000);
} catch (InterruptedException ex1) {
}
} finally {
if (con != null)
try {
con.close();
} catch (SQLException ex) {
}
}
} }
System.out.println("8833 connect false");
try {
Thread.sleep(1000);
} catch (InterruptedException ex1) {
}
只有一个退出的可能就是break语句,出错了就不会退出