Java.sql.SQLException:侦听器拒绝连接,出现以下错误:ORA-12518执行60多次选择时

Java.sql.SQLException:侦听器拒绝连接,出现以下错误:ORA-12518执行60多次选择时,java,oracle,Java,Oracle,我在用java创建项目时遇到了一个问题,我正在连接oracle上的本地数据库,这就是我连接数据库的方式 conexion = "jdbc:oracle:thin:@localhost:1521:XE"; this.usuario = "System"; this.password = "hereThePassword"; Class.forName( "oracle.jdbc.driver.OracleDriver" ); conn = java.sql.DriverManager.getCo

我在用java创建项目时遇到了一个问题,我正在连接oracle上的本地数据库,这就是我连接数据库的方式

conexion = "jdbc:oracle:thin:@localhost:1521:XE"; 
this.usuario = "System";
this.password = "hereThePassword";
Class.forName( "oracle.jdbc.driver.OracleDriver" );
conn = java.sql.DriverManager.getConnection(conexion,usuario,password);
这就是我在DB上执行查询的方式

ejecutarConsulta(String sql){
  Class.forName( "oracle.jdbc.driver.OracleDriver" );
  conn = java.sql.DriverManager.getConnection(conexion,usuario,password);
  stmt = conn.createStatement();
  rs = stmt.executeQuery( sql );
}
我需要在一个循环中执行200多个select(for),代码如下:

conexionBD BD = new conexionBD();
for(int i = 0; i < 500;i++){
        BD.ejecutarConsulta("select * from table");
        System.out.println(i);
    }

如何使用同一对象BD执行200多个查询?

由于问题下面的注释,我发现了错误

我正在创建一个新连接以执行单个选择,因此我更改代码如下:

创建连接:

Class.forName( "oracle.jdbc.driver.OracleDriver" );
conn = java.sql.DriverManager.getConnection(conexion,usuario,password);
stmt = this.conn.createStatement();
以及执行单个查询:

ejecutarConsulta(String sql){
 System.out.println( sql );
 rs = this.stmt.executeQuery( sql );
}

重新使用您的连接,不要为每个请求打开新的连接!(并且Class.forName技巧只需要在启动时,在创建第一个连接之前执行一次。)似乎您正在为每个查询创建一个新连接,使用相同的连接执行查询,这是正确的!在执行新查询时,我正在创建一个新连接,非常感谢。
ejecutarConsulta(String sql){
 System.out.println( sql );
 rs = this.stmt.executeQuery( sql );
}