Class.forName(driver);
connection = DriverManager.getConnection(url, user, password);
Si ya cuentas con el driver, url, usuario (user) y contraseña (password), además del "jar" para la conexión; Podrás utilizar la siguiente estrategia para establecer una conexión a tu gestor de BD favorito.
// package tu.paquete.util;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;
import java.util.logging.Level;
import java.util.logging.Logger;
/**
*
* @author AdrianCruz
*/
public class DbConnection {
private static Connection connection = null;
public static Connection getConnection() {
String driver="", url="",user="", password="";
if (connection != null)
return connection;
else {
try {
Properties prop = new Properties();//UTILidad para leer propiedades
//referencia al flujo de entrada de bytes:
InputStream inputStream = DbConnection.class.getClassLoader().
getResourceAsStream("/db.properties");//buscar el recurso db.properties, debe estar en src <default package>
prop.load(inputStream); //cargar el archivo de propiedades
driver = prop.getProperty("driver");//recuperar valor de clave driver
url = prop.getProperty("url");//recuperar valor de clave url
user = prop.getProperty("user");//recuperar valor de clave user
password = prop.getProperty("password");//recuperar valor de clave password
Class.forName(driver);
connection = DriverManager.getConnection(url, user, password);
} catch(FileNotFoundException ex){
System.out.println("******* no se enocntró el archivo");
}
catch (IOException ex) {
String msg="******* problema al leer el archivo de propiedades";
Logger.getLogger(DbConnection.class.getName()).log(Level.SEVERE, msg, ex);
} catch (SQLException ex) {
String msg="****** problema al establecer la conexión .getConnection("+url+","+ user+","+ password+")";
Logger.getLogger(DbConnection.class.getName()).log(Level.SEVERE, msg, ex);
} catch (ClassNotFoundException ex) {
String msg="****** problema al cargar el Driver: Class.forName("+driver+")";
Logger.getLogger(DbConnection.class.getName()).log(Level.SEVERE, msg, ex);
} catch(Exception e){
System.out.println("***** error no identificado");
}
return connection;
}
}
}
El código, de la clase anterior, necesita al archivo db.properties que contiene las claves con los valores de la conexión
Los comentarios se declaran con la almohadilla o gato (
#
)En este caso, los comentarios corresponden a los datos de una conexión con SQL Server, mientras que las claves activas corresponden a una conexión con MySQL. Se utiliza el servidor www.db4free.net por el puerto 3306 quien aloja la BD, pero en "desarrollo" podría ser localhost.
Para asegurarse de contar con los datos correctos, se recomienda ver el blog MySQL o SQL Server
No hay comentarios.:
Publicar un comentario