martes, 12 de mayo de 2015

CONECTAR UNA APLICACIÓN A UNA BASE DE DATOS

Instrucciones y Recomendaciones 

1- Primero que todo debemos descargar el archivo .jar conocido como MySQL Connector y añadirlo a las librerías de nuestro proyecto; luego crearemos en nuestro proyecto, un paquete al cual llamaremos "Metodos", y dentro de este, crearemos una clase la cual llamaremos "ConexionMySQL". 

2- Copia y pega el código resaltado en amarillo, después de la línea de código "package Metodos;" y sobre la línea de código "public class ConexionMySQL {", este fragmento de código se utiliza para importar las Clases y/o librerías necesarias para poder trabajar con ciertas funcionalidades y métodos de nuestra Clase:

import java.sql.*;
import javax.swing.JOptionPane;

3- Ahora copia y pega el código resaltado en azul, dentro de la Clase "public class ConexionMySQL {}"; es decir, debe quedar rodeado por las llaves "{}" que limitan dicha Clase.

4- La primera parte de este código resaltado en azul, consiste en crear 4 variables de tipo String y con la propiedad public. En la primera variable llamada "db", guardamos el nombre de la Base de datos a la cual nos queremos conectar; en la segunda variable url, guardaremos la ruta de donde se encuentra ubicada nuestra Base de datos, si nos damos cuenta deberemos emplear la api "jdbc:mysql" lo cual permite indicar que queremos conectar nuestra aplicación Java con una Base de datos en MySQL, además debemos consignar la dirección de la máquina que contiene la Base de datos, en este caso como trabajaremos en una sola máquina colocamos "localhost", en el caso dado que trabajemos de forma remota debemos reemplazar este valor por la dirección IP (ej. 192.168.1.2) de la máquina a la cual necesitamos conectarnos, en esta misma variable concatenamos la variable que instanciamos al principio "+db"; luego la tercera y cuarta variable "user" y "pass", corresponden al usuario y la clave para poder tener acceso a la Base de datos.     

public String db = "bdcontactos";
public String url = "jdbc:mysql://localhost/"+db;
public String user = "root";
public String pass = "123";

5- Lo siguiente es un método, este contiene la propiedad "public", y devolverá un valor de tipo "Connection", que en otras palabras sería la conexión con nuestra Base de datos; y se le ha asignado a este método el nombre de "Conectar":

public Connection Conectar(){}

6- Ahora instanciaremos un objeto de tipo "Connection", al cual asignaremos el valor "null". Esto irá dentro del método del punto anterior:

Connection link = null;  

7-  Proseguiremos a crear un bloque "try-catch", debido a que el código que hemos de emplear podría producir una excepción y/o error. Este bloque irá dentro del método mencionado en el punto 5:

try{   

    }catch(Exception ex){


    }


8- En esta línea de código lo que haremos será cargar la Clase "Driver", que se encuentra ubicada dentro del ".jar" MySQL Connector que agregamos a nuestras librerías. Esta línea irá dentro del "try{}" del punto anterior:

Class.forName("org.gjt.mm.mysql.Driver");

9- Ahora utilizando el método DriverManager.getConnection, y empleando las variables que instanciamos al inicio de esta Clase, obtendremos la conexión con nuestra Base de datos, y procederemos administrarla y almacenarla en el objeto tipo Connection instanciado al principio del método "Conectar". Esta línea de código irá dentro del "try{}" del punto 7. 

link = DriverManager.getConnection(this.url, this.user, this.pass);


10- En el caso dado de que ocurra un error al tratar de conectarnos con nuestra Base de datos, procederemos a mostrar dicha excepción a través de una pequeña ventana, usando el componente JOptionPane. Esta parte irá dentro del "catch(){}" del punto 7:

JOptionPane.showMessageDialog(null, ex);

11- Por último retornaremos la conexión obtenida, la cual podría ser exitosa o nula. Esta línea irá por fuera del try-catch, pero dentro del método Conectar:

return link; 
  
12- En cuanto al código para el test de conexión, copia y pega el código resaltado en verde, dentro del evento y/o método del botón de un formulario de tu proyecto.

13- En las dos primeras líneas de código, lo que hacemos es instanciar un objeto de nuestra Clase ConexionMySQL.java y luego en un objeto tipo Connection, administramos y/o capturamos la conexión que se nos devuelve al llamar el método Conectar de nuestra Clase mencionada anteriormente:

ConexionMySQL mysql = new ConexionMySQL();

java.sql.Connection cn= mysql.Conectar();
  
14- En el resto de código, empleamos un condicional "if", en el cual verificamos que no se nos devuelva una conexión nula, si se cumple esta condición, mostraremos una ventana (JOptionPane) en la cual mostraremos el mensaje "Conectado"; luego dentro de un try-catch, procedemos a cerrar la conexión con la Base de datos, y en dado caso de que ocurra una excepción a la hora de realizar la desconexión, mostraremos dicho error por consola:

if(cn!=null){

                JOptionPane.showMessageDialog(null, "Conectado");

                try{

                    cn.close();

                }catch(SQLException ex){

                    System.out.println("Error al desconectar "+ex);

                }

        }
  

15- Ahora sólo basta con ejecutar tu proyecto y hacer las respectivas pruebas.

No hay comentarios:

Publicar un comentario