Está en la página 1de 7

Conectar Java con MySQL en Netbeans

Java puede conectarse a múltiples bases de datos, con la que mejor se lleva es con
Oracle, sin embargo en ocasiones puede ser que los que venimos de la web, al tener
la necesidad de hacer una aplicación de escritorio, nos sintamos más acostumbrados
con MySQL.
En primer lugar, para realizar este ejemplo debemos tener instalado tres cosas en
nuestro sistema:

 La máquina virtual de Java (Para ejecutar Java, claro está)


 MySQL (en mi caso yo tengo instalado Xampp que viene con Apache y
MySQL, entre otros servicios
 Netbeans (Con Java instalado)
 MySQL

En primer lugar vamos a crear una base de datos, a la cual yo


llamaré: java_mysql. La mista tendrá una sola tabla llamada tareas con el
siguiente código:

TABLE tareas(

id_tarea int(10) unsigned not null auto_increment primary


key,

titulo varchar (50) not null,

descripcion varchar(255) not null,

nivel_de_prioridad tinyint(1) not null

);
Java

Vamos a abrir Netbeans y vamos a crear un nuevo proyecto, yendo a File ->
New Project -> Java -> Java Application.

Vamos a ponerle un nombre y vamos a guardarlo en alguna parte de nuestra


máquina.

Vamos a borrar todo lo que esté dentro de la carpeta source (o src) y dentro
vamos a crear dos paquetes, uno al que yo llamaré modelos y otro al que
llamaré servicios.

Ahora, para conectar Java a MySQL tenemos que agregar un librería que se
encargará de hacer esa magia. Así que dentro que pulsando botón derecho
sobre la carpeta Libraries, vamos a ir a Add Library

Y agregamos la librería MySQL JDBC Driver, primero seleccionándola y luego


pulsando Add Library.
Dentro del paquete modelos, vamos a crear una clase, a la que yo
llamaré Tarea.java, con el siguiente código:

package modelos;

public class Tarea {

private final Integer id_tarea;

private String titulo;

private String descripcion;

private Integer nivel_de_prioridad;

public Tarea() {

this.id_tarea = null;

this.titulo = null;

this.descripcion = null;

this.nivel_de_prioridad = null;
}

public Tarea(Integer id_tarea, String titulo, String


descripcion, Integer nivel_de_prioridad) {

this.id_tarea = id_tarea;

this.titulo = titulo;

this.descripcion = descripcion;

this.nivel_de_prioridad = nivel_de_prioridad;

public Integer getId_tarea() {

return id_tarea;

public String getTitulo() {

return titulo;

public String getDescripcion() {

return descripcion;

public Integer getNivel_de_prioridad() {

return nivel_de_prioridad;

public void setTitulo(String titulo) {

this.titulo = titulo;

}
public void setDescripcion(String descripcion) {

this.descripcion = descripcion;

public void setNivel_de_prioridad(Integer


nivel_de_prioridad) {

this.nivel_de_prioridad = nivel_de_prioridad;

@Override

public String toString() {

return "Tarea{" + "id_tarea=" + id_tarea + ", titulo="


+ titulo + ", descripcion=" + descripcion + ",
nivel_de_prioridad=" + nivel_de_prioridad + '}';

Conectando JAVA con MySQL

Bien, ahora creamos la clase que va a conectar nuestra aplicación con MySQL,
yendo al paquete servicios, vamos a crear una nueva clase
llamada Conexion.java con el siguiente código:

package servicios;

import java.sql.*;

public class Conexion {

private static Connection cnx = null;

public static Connection obtener() throws SQLException,


ClassNotFoundException {

if (cnx == null) {

try {
Class.forName("com.mysql.jdbc.Driver");

cnx =
DriverManager.getConnection("jdbc:mysql://localhost/java_mysq
l", "root", "");

} catch (SQLException ex) {

throw new SQLException(ex);

} catch (ClassNotFoundException ex) {

throw new ClassCastException(ex.getMessage());

return cnx;

public static void cerrar() throws SQLException {

if (cnx != null) {

cnx.close();

Esta clase tendrá un método estático llamado obtener(), el cual va a


devolvernos una instancia de conexión y de no haber una previa va crear una:

cnx =
DriverManager.getConnection("jdbc:mysql://localhost/java_mysq
l", "root", "");

Esto gracias al método getConnection(), el cuál recibirá como primer


parámetro el tipo de base de datos (MySQL) y la ubicación de la base de datos,
en mi caso, como estoy trabajando en un entorno local, será localhost. El
segundo parámetro es el usuario y el tercero la contraseña.
A su vez este método puede disparar dos excepciones, SQLException, si
surge algún error, por ejemplo que no se pueda conectar a la base de datos,
y ClassNotFoundException, en caso de que no encuentre la librería.

Y por último el método, también estático, cerrar(), que como su nombre lo


indica, cerrará la conexión, en caso de que haya alguna abierta.