JDBC打开一个新的数据库会话

时间:2010-05-11 16:15:32

标签: java oracle jdbc

我只是想确保如果我使用以下内容,我将打开一个单独的数据库会话而不是同一个会话(为了测试我需要单独的会话)。

Connection connection = DriverManager.getConnection(URL,USER,PASSWORD);

每次执行上述代码时,我都会运行查询,然后执行connection.close()

例如:

while(some condition) {
  Connection connection = DriverManager.getConnection(URL,USER,PASSWORD);

  //now use the connection to generate a ResultSet of some query

  connection.close();
}

因此,循环的每次迭代(每个查询)都需要自己的会话。

这是否正确地开启了我需要的separte会话(如果没有,我需要添加/更改什么)?感谢

1 个答案:

答案 0 :(得分:1)

javadoc说:

  

尝试建立连接   给定的数据库URL

语言略显粗俗,我怀疑这取决于JDBC驱动程序,但如果除了打开新连接之外还做了其他任何事情,我会感到惊讶。

我认为JDBC驱动程序可以在引擎盖下执行连接池,但我会惊讶地发现它。

对于Oracle JDBC驱动程序,此每次都打开一个新连接。这是Oracle中相对较慢的过程,您可能需要考虑使用连接池(例如Apache Commons DBCP或c3p0)来提高性能。