hola mira porq en vez de conectarte cada vez que necesites crear un stament lo que haces es hacer una clase que utilize el patron singleton que se conecte una sola vez (al arrancar el programa) y luego pides la conexion de donde quieras?
aca te dejo el cod de como seria
Código:
import java.sql.Connection;
import java.sql.DriverManager;
/**
*
* @author Agustin Sivoplas
*/
public class ConexionBD {
private Connection con;
private static ConexionBD instancia=null;
/** Creates a new instance of ConexionBD */
private ConexionBD() {
}
/**
*Retorna la instancia de la clase.
*
*
*@return ConexionBD
*/
public static ConexionBD getInstancia(){
if (instancia==null)
instancia = new ConexionBD();
return instancia;
}
/**
*Permite conectarnos a la base de datos
*
*
*@param usr String
*
*
*@param pwd String
*
*
*@param host String
*
*
*@param base String
*
*
*@return Boolean
*/
public boolean conectar(String usr, String pwd, String host,String base){
boolean valor=false;
try{
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://" + host + "/" + base,usr, pwd);
valor=true;
} catch(Exception ex){
ex.printStackTrace();
valor=false;
}
return valor;
}
/**
*Retorna la conexion.
*
*
*@return Connection
*/
public Connection getConexion(){
return con;
}
}
para llamarlo lo que haces es Connection con =ConexionBD.getInstancia().getConexion();
saludos, cualquier cosa me avisas