gentoo linux, java, software libre y otras hierbas
Nov, 19 2007 - 12:12 pm

Conexiones entre MySQL y Java

En muchas ocaciones es necesario que nuestra aplicación desarrollada en Java acceda a, y manipule, datos que se encuentra en algún DBMS, como por ejemplo MySQL. Para esto debemos echar mano de la API JDBC de Java, y además de esto, usar los Drivers “específicos” para manipular DBMS’s “específicos” (Oracle, MySQL, etc.).

MySQL provee conectividad para aplicaciones cliente desarrolladaas en Java mediante este driver JDBC, llamado MySQL Connector/J, que es el driver JDBC oficial para MySQL. La ultima versión de este conector, al momento de escribir este articulo, es el Connector/J 5.1, que incluye soporte para las funcionalidades del JDBC-4.0.

MySQL Connector/J es un driver JDBC tipo 4. Existen otras versiones que son compatibles con las especificaciones JDBC-3.0 y JDBC-4.0. Se dice que es tipo 4 ya que el driver es una implementación del protocolo de MySQL hecha puramente en Java, y no requiere de clientes binarios de MySQL. [Más info]

Por suspuesto es necesario que comprendas de manera clara el funcionamiento de la API de JDBC, para poder usar cualquier conector. Puedes si quieres leer estos dos tutoriales muy básicos y fáciles de entender, donde te podrás introducir en el tema:

Instalando el MySQL Connector

Lo primero que debemos hacer, es ir a la página de descargas del conector de MySQL y descargarnos la última versión (si es necesario). Escogemos el tipo de archivo que nos convenga (por ejemplo el tar.gz si usamos Gnu/Linux, o zip si usamos Windows). Descomprimimos el archivo y observamos que nos proporcionan:

  • Los binarios ejecutables (en mi caso mysql-connector-java-5.1.5-bin.jar)
  • Los archivos fuente
  • La documentación del conector

Debemos entonces copiar el archivo JAR ejecutable, en el siguiente path: \ruta_instalacion_java\jre\lib\ext. Por ejemplo en mi openSuse sería en /usr/lib/jvm/jdk5.0/jre/lib/ext, o en Windows podría ser en C:\Program Files\Java\jre1.6.0_01\lib\ext,

Luego de copiar dicho archivo, ya podemos usar el conector de MySQL desde nuestras aplicaciónes en Java, JSP, servlets, etc.

Nota: Es importante que el usuario que ejecute la aplicación, tenga privilegios de lectura y ejecución sobre el archivo .jar, de lo contrario podrían aparecer errores al momento de leer las clases de dicho conector. En Gnu/Linux, por ejemplo, los paths donde se coloca el conector suelen ser propiedad del usuario root, por lo que lo mejor que puedes hacer es cambiar el propietario del archivo una vez lo hayas copiado, por ejemplo:

sudo chown tu_nombre_de_usuario /usr/lib/jvm/jdk5.0/jre/lib/ext/mysql-connector-java-XXX-bin.jar

Eso es todo, ahora puedes si quieres montar un entorno de trabajo Apache + MySQL + Java (JSP).

Etiquetas: hack, java, opensuse, sql

23 Comentarios | deja el tuyo

Un enlace entrante

22 Comentarios en “Conexiones entre MySQL y Java”

  1. ralejanro dice:

    Me gusto tanto que hice un video-tutorial, :
    Parte 1:
    http://www.youtube.com/watch?v=Ulp9mOuDWac

    Parte2:
    http://www.youtube.com/watch?v=Tm7ALvYzQLk

  2. Cristian dice:

    Parcero, están muy bacanos… mañana creo una entrada en el blog con eso.

    Un saludo.

  3. ralejanro dice:

    De 1 hagalee

  4. hk dice:

    Hola una pregunta
    el conector sirve solo para conectar un lenguaje de programacion con toda la base de datos no? :s
    no me queda muy claro saludos

  5. Yasna dice:

    Hola, mi consulta es ésta:

    Hice una clase en blueJ, que ingreso datos y me arroja resultados, además almacena en una variable el total de las ventas. Lo que necesito hacer es que esa información quede almacenada y que cuando cierre el programa no se borre. y si ejecuto la clase otra vez, me siga contando de donde estaba.

    En resumidas cuentas, quiero hacer de la clase un programa. Sin tener que usar el blueJ de medio.

    No se si me explique bien, recién estoy empezando a programar.

    Ojalá pueda ayudarme.

    De antemano muchas gracias.

  6. Cristian dice:

    Hola Yasna, puedes echarle un vistazo a los ejemplos en donde se explica cómo guardar datos persistentemente en Java:

    http://casidiablo.net/codigo-ejemplo-completo-de-archivos-aleatorios-en-java/
    http://casidiablo.net/objectinputstream-java/

    Un saludo!

¡Déjanos tu comentario!