Como crear varias conexiones con un mismo driver JDBC?

ipprieto
07 de Julio del 2006
Hola, mi problema es el siguiente:

Estoy desarrollando una aplicación en Java con Postgres. Para realizar la conexión entre Java y la BD utilizo el driver de postgres para JDBC, de la siguiente manera:

/* Obtener una conexión. */
Class.forName("org.postgresql.Driver");
Connection connection = DriverManager.getConnection("jdbc:postgresql://localhost:5432/nombreBD", user, password);

El problema llega cuando conecto varios clientes a la BD, pues al parecer JDBC siempre asigna el mismo objeto Connection para un mismo driver, por lo tanto todos los clientes utilizan el mismo objeto Connection.

Y un mismo objeto Connection no soporta varias transacciones al mismo tiempo, lo que da lugar a inconsistencias y bloqueos cuando varios clientes intentan ejecutar transacciones.

La solución al problema pasa por obtener un objeto Connection para cada cliente, es decir una conexión distinta para cada cliente.

Alguien sabe como se hace esto? O existe alguna otra solución para que varios clientes acceden a la BD y ejecuten transaciones?

Espero haber sido más o menos clara en la exposición del problema.

Gracias de antemano a posibles sugerencias.