📂 Archivo técnico
Este contenido lo publiqué en un blog anterior durante mis primeros proyectos. Hoy lo conservo aquí como referencia y ejemplo práctico para quienes quieran reforzar la lógica de programación.
Contenido
ToggleRecursos necesarios
Link del conector MySQL – Java:
Link del Instalador de MySQL utilizado en el tutorial:
Primera parte del tutorial
Para esta primera parte del video, se crea la base de datos junto con la tabla con los datos necesarios y posteriormente se crea la aplicación Java en la que se escribe el código mínimo para realizar la conexión entre la aplicación Java y la base de datos MySQL.
La conexión de nuestra aplicación Java con una base de datos MySQL se resumirá en los dos siguientes pasos:
- Cargar el controlador o driver.
- Establecer la conexión.
Todo el código que realiza la conexión se escribe dentro de un único archivo de prueba llamado Conexion.java
Código fuente
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class Conexion {
private static final String CONTROLADOR = "com.mysql.jdbc.Driver";
private static final String URL = "jdbc:mysql://localhost:3306/bd_ejemplo";
private static final String USUARIO = "root";
private static final String CLAVE = "mysql";
public Connection conectar() {
Connection conexion = null;
try {
Class.forName(CONTROLADOR);
conexion = DriverManager.getConnection(URL, USUARIO, CLAVE);
System.out.println("Conexión OK");
} catch (ClassNotFoundException e) {
System.out.println("Error al cargar el controlador");
e.printStackTrace();
} catch (SQLException e) {
System.out.println("Error en la conexión");
e.printStackTrace();
}
return conexion;
}
public static void main(String[] args) {
}
}
Videotutorial Parte 1
Segunda parte del tutorial
Para esta segunda parte se refactoriza el código realizado en la primera parte de tal forma que la clase Conexion.java (que contiene el código de la conexión hacia la base de datos) se pueda reutilizar desde otras clases.
Para cumplir con lo anterior se hizo lo siguiente:
- La lógica que realiza la carga del driver de MySQL se ubica dentro de un bloque static consiguiéndose así que solo se realice una única vez (al momento que carga toda la aplicación).
- La lógica que realiza la conexión se ubica dentro de un método conectar cuyo tipo de retorno es Connection. Este método retornará un objeto de tipo Connection que contiene la referencia a la conexión ya establecida.
Videotutorial Parte 2
Código fuente
Conexion.java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class Conexion {
private static final String CONTROLADOR = "com.mysql.jdbc.Driver";
private static final String URL = "jdbc:mysql://localhost:3306/bd_ejemplo";
private static final String USUARIO = "root";
private static final String CLAVE = "mysql";
static {
try {
Class.forName(CONTROLADOR);
} catch (ClassNotFoundException e) {
System.out.println("Error al cargar el controlador");
e.printStackTrace();
}
}
public Connection conectar() {
Connection conexion = null;
try {
conexion = DriverManager.getConnection(URL, USUARIO, CLAVE);
System.out.println("Conexión OK");
} catch (SQLException e) {
System.out.println("Error en la conexión");
e.printStackTrace();
}
return conexion;
}
}
TestConexion.java
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class TestConexion {
public static void main(String[] args) {
Conexion conexion = new Conexion();
Connection cn = null;
Statement stm = null;
ResultSet rs = null;
try {
cn = conexion.conectar();
stm = cn.createStatement();
rs = stm.executeQuery("SELECT * FROM usuario");
while (rs.next()) {
int idUsuario = rs.getInt(1);
String usuario = rs.getString(2);
String clave = rs.getString(3);
System.out.println(idUsuario + " - " + usuario + " - " + clave);
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if (rs!= null) {
rs.close();
}
if (stm != null) {
stm.close();
}
if (cn != null) {
cn.close();
}
} catch (Exception e2) {
e2.printStackTrace();
}
}
}
}