Foros del Web » Programación para mayores de 30 ;) » Java »

Conectar a una Base de Datos

Estas en el tema de Conectar a una Base de Datos en el foro de Java en Foros del Web. Quisiera saber si se puede conectar a una bd de la que sea: oracle, mysql, postgresql, etc. pero que sea mediante un archivo .jar externo ...
  #1 (permalink)  
Antiguo 07/01/2010, 08:27
Avatar de zaccarelliasbun  
Fecha de Ingreso: mayo-2009
Ubicación: Bolivia
Mensajes: 70
Antigüedad: 15 años
Puntos: 1
Conectar a una Base de Datos

Quisiera saber si se puede conectar a una bd de la que sea: oracle, mysql, postgresql, etc. pero que sea mediante un archivo .jar externo por ejemplo:

Class.forName("com.mysql.Driver").newInstance();

esto hago comúnmente por que agrego el Driver a mi aplicación, pero yo quiero conectarme a una bd y que el driver no esté en mi aplicación, no se algo así:

Class.forName("c:/driverMySQL.jar").newInstance();

me podrían ayudar en esto por favor lo que trato de hacer es una aplicación para que el usuario en un formulario agregue el driver que desee y también agregue la cadena de conexión, url, usuario y password para conectarse a la bd, pero no se como conectarme a la bd mediante el archivo que se agrego. gracias por su ayuda.
  #2 (permalink)  
Antiguo 07/01/2010, 09:20
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 8 meses
Puntos: 188
Respuesta: Conectar a una Base de Datos

Creas el archivo de conexion como si fuese propio

Cuando lo tengas lo metes en un .jar (al fin y al cabo un .jar es un conjunto de archivos comprimidos muy similar a un .zip).

Importas el jar donde lo vayas a utilizar y lo usas como un jar cualquiera, pero diseñado especificamente para las conexiones que quieres hacer.
  #3 (permalink)  
Antiguo 07/01/2010, 10:30
Avatar de zaccarelliasbun  
Fecha de Ingreso: mayo-2009
Ubicación: Bolivia
Mensajes: 70
Antigüedad: 15 años
Puntos: 1
Respuesta: Conectar a una Base de Datos

Gracias por responderme Fuzzylog pero la verdad que no entendí bien tu respuesta, me podrias explicar un poco mejor, mi aplicación cuando esté en ejecución tiene que permitirle al usuario agregar el driver y poder conectarse a una bd, esto es por si el día de mañana aparece una nueva versión del driver.
  #4 (permalink)  
Antiguo 07/01/2010, 11:11
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 8 meses
Puntos: 188
Respuesta: Conectar a una Base de Datos

Es que parece que lo que preguntas son dos cosas distintas.

Yo te he indicado la forma de crear un jar que contenga la conexion a la bd y como llamarlo desde la aplicación.

Tu lo que pides en el segundo mensaje parece ser que te venga el driver empaquetao en un jar y poder llamarlo desde la aplicación. Pero el trabajo de actualizar el driver es manual. Si quieres, como mucho lo que puedes hacer es un formulario que actualice el código con el nombre del nuevo driver, pero poco más...
  #5 (permalink)  
Antiguo 07/01/2010, 12:23
Avatar de zaccarelliasbun  
Fecha de Ingreso: mayo-2009
Ubicación: Bolivia
Mensajes: 70
Antigüedad: 15 años
Puntos: 1
Respuesta: Conectar a una Base de Datos

bueno gracias por ayudarme Fuzzylog, te voy a explicar mejor la verdad es que creo q yo soy el que no se explica.
El proyecto que estoy realizando es un GeneradorDAO, entonces el sistema ya esta casi terminado solo falta hacer la Ingeniería Inversa a la BD para recuperar sus tablas, atributos, etc. lo que el usuario debe hacer para poder hacer la Ingeniería Inversa es conectarse a la bd que quiera y hacer los pasos, yo obviamente le voy a dar algunos drivers para algunas bd, pero si el usuario desea conectarse a una bd que mi sistema no tiene el driver o si desea actualizar el driver para ejecutar la conexión, tiene un formulario donde el mediante un JFileChooser agrega el path del driver .jar y también tiene los campos para ingresar la forma de conexión ej: jdbc:mysql://..... , el url, el usuario, el password, y mi sistema debe conectarse a esa bd con todos los parámetros ingresados y utilizando el driver que eligió, no se si ahora me dejo entender mejor.
  #6 (permalink)  
Antiguo 07/01/2010, 14:34
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Respuesta: Conectar a una Base de Datos

Habitualmente, lo que se hace es dejarle además al usuario especificar el nombre de la clase del Driver, que es lo que se usa despues en el Class.forName, o si no, buscar dentro de las clases del jar cuales son las clases que implementan java.sql.Driver y darle a escoger si hay más de uno.

Así lo hace por ejemplo el SquirrelSQL para cuando te quieres conectar con él a una BDD.

S!
__________________
Para obtener respuestas, pregunta de forma inteligente o si no, pregunta lo que quieras que yo contestaré lo que me dé la gana.

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:42.