public class JDBCConnectionPool extends Object
JDBCConnectionPool pool = new JDBCConnectionPool(jdbcURL, userName, passwd); ... Connection conn = pool.takeConnection(); // do stuff with conn pool.putConnection(conn); // don't use conn from here on Statement stmt = pool.takeStatement(); // do stuff with stmt pool.putStatement(stmt); // don't do anything else with stmt
It is not a good idea to call close()
on a connection you
get from a pool. This would prevent it from being re-used. Also, we have
seen some odd behavior with connections involved in transactions being
re-used. We have not yet identified exactly how you can safely use a
pooled connection for transaction-safe code.
Note: We should probably be moving to a propper connection pool API. Let's standardise on one soon.
Constructor and Description |
---|
JDBCConnectionPool(String url) |
JDBCConnectionPool(String url,
String user,
String pass) |
Modifier and Type | Method and Description |
---|---|
void |
putConnection(Connection c) |
void |
putStatement(Statement st) |
Connection |
takeConnection() |
Statement |
takeStatement() |
public JDBCConnectionPool(String url, String user, String pass)
public JDBCConnectionPool(String url)
public Connection takeConnection() throws SQLException
SQLException
public void putConnection(Connection c) throws SQLException
SQLException
public Statement takeStatement() throws SQLException
SQLException
public void putStatement(Statement st) throws SQLException
SQLException
Copyright © 2014 BioJava. All rights reserved.