Conectarse a MySQL desde Java NetBeans más CRUD JDBC

 Para conectarse a MySQL desde Java usando NetBeans y realizar un CRUD (Crear, Leer, Actualizar, Eliminar), debes seguir estos pasos:



1. Descargar el conector MySQL para Java (JDBC)

  • Descarga el archivo .jar del conector MySQL JDBC desde el sitio oficial: Descargar MySQL JDBC Connector.
  • Asegúrate de descargar la versión compatible con tu versión de MySQL.

2. Agregar la librería MySQL Connector al proyecto en NetBeans

  • Abre NetBeans y crea un proyecto nuevo en Java.
  • Haz clic derecho en el proyecto > Propiedades > Libraries > Add JAR/Folder.
  • Selecciona el archivo .jar que descargaste (el conector MySQL).

3. Configurar la conexión a MySQL

  • Define los datos de conexión en tu código Java, como la URL del servidor, el nombre de usuario, la contraseña y la base de datos.

Ejemplo de código para conectar a MySQL:

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;


public class ConexionDB {

    private static final String URL = "jdbc:mysql://localhost:3306/nombre_base_datos";

    private static final String USER = "root"; // usuario de MySQL

    private static final String PASSWORD = "tu_contraseña"; // contraseña de MySQL


    public static Connection getConnection() {

        Connection con = null;

        try {

            con = DriverManager.getConnection(URL, USER, PASSWORD);

            System.out.println("Conexión exitosa a la base de datos.");

        } catch (SQLException e) {

            System.out.println("Error al conectar a la base de datos.");

            e.printStackTrace();

        }

        return con;

    }

}

4. Implementar CRUD (Create, Read, Update, Delete)

a. Crear (Insertar datos)

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class CrudOperations {
    public void insertarDato(String nombre, int edad) {
        String sql = "INSERT INTO usuarios (nombre, edad) VALUES (?, ?)";
        
        try (Connection con = ConexionDB.getConnection();
             PreparedStatement ps = con.prepareStatement(sql)) {
            
            ps.setString(1, nombre);
            ps.setInt(2, edad);
            
            ps.executeUpdate();
            System.out.println("Dato insertado exitosamente.");
            
        } catch (SQLException e) {
            System.out.println("Error al insertar datos.");
            e.printStackTrace();
        }
    }
}

b. Leer (Consultar datos)
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class CrudOperations {
    public void leerDatos() {
        String sql = "SELECT * FROM usuarios";
        
        try (Connection con = ConexionDB.getConnection();
             PreparedStatement ps = con.prepareStatement(sql);
             ResultSet rs = ps.executeQuery()) {
            
            while (rs.next()) {
                int id = rs.getInt("id");
                String nombre = rs.getString("nombre");
                int edad = rs.getInt("edad");
                
                System.out.println("ID: " + id + ", Nombre: " + nombre + ", Edad: " + edad);
            }
            
        } catch (SQLException e) {
            System.out.println("Error al leer datos.");
            e.printStackTrace();
        }
    }
}
c. Actualizar datos
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class CrudOperations {
    public void actualizarDato(int id, String nuevoNombre, int nuevaEdad) {
        String sql = "UPDATE usuarios SET nombre = ?, edad = ? WHERE id = ?";
        
        try (Connection con = ConexionDB.getConnection();
             PreparedStatement ps = con.prepareStatement(sql)) {
            
            ps.setString(1, nuevoNombre);
            ps.setInt(2, nuevaEdad);
            ps.setInt(3, id);
            
            ps.executeUpdate();
            System.out.println("Dato actualizado exitosamente.");
            
        } catch (SQLException e) {
            System.out.println("Error al actualizar datos.");
            e.printStackTrace();
        }
    }
}
d. Eliminar datos
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class CrudOperations {
    public void eliminarDato(int id) {
        String sql = "DELETE FROM usuarios WHERE id = ?";
        
        try (Connection con = ConexionDB.getConnection();
             PreparedStatement ps = con.prepareStatement(sql)) {
            
            ps.setInt(1, id);
            
            ps.executeUpdate();
            System.out.println("Dato eliminado exitosamente.");
            
        } catch (SQLException e) {
            System.out.println("Error al eliminar datos.");
            e.printStackTrace();
        }
    }
}

5. Ejecutar el CRUD desde tu aplicación

Puedes llamar a estos métodos desde tu clase principal o desde un entorno gráfico si prefieres trabajar con una interfaz de usuario.

public class MainApp {

    public static void main(String[] args) {

        CrudOperations crud = new CrudOperations();

        

        // Insertar

        crud.insertarDato("Juan", 25);

        

        // Leer

        crud.leerDatos();

        

        // Actualizar

        crud.actualizarDato(1, "Juan Perez", 26);

        

        // Eliminar

        crud.eliminarDato(1);

    }

}

6. Consideraciones

  • Asegúrate de que MySQL esté en funcionamiento y que el usuario tenga los permisos necesarios.
  • Configura bien el puerto de conexión (generalmente es 3306).
  • Si trabajas con una interfaz gráfica en NetBeans, puedes integrar el CRUD en un formulario.

Este código básico te ayudará a manejar una base de datos MySQL desde Java. Puedes expandirlo con más características como manejo de excepciones avanzadas, transacciones, o trabajar con frameworks como Hibernate.




Comentarios

Entradas populares de este blog

instalar el driver JDBC de MySQL en NetBeans en Ubuntu Linux

Como restablecer la contraseña del usuario root de MySQL en Windows

Comandos SQL Básicos de Manipulación de Datos en MySQL