¿Cómo crear una conexión de base de datos?

Java Database Connectivity es una API estándar o podemos decir una interfaz de aplicación presente entre el lenguaje de programación Java y las diversas bases de datos como Oracle, SQL, PostgreSQL, MongoDB, etc. Básicamente conecta el front-end (para interactuar con los usuarios) con el backend para almacenar datos ingresados ​​por los usuarios en los detalles de la tabla. JDBC o Java Database Connection crea una base de datos siguiendo los siguientes pasos:

  • Importar la base de datos
  • Cargar y registrar controladores
  • Crear una conexión
  • Crear una declaración
  • Ejecutar la consulta
  • Procesar los resultados
  • Cerrar la conexión

Paso 1: Importar la base de datos

Java consta de muchos paquetes que facilitan la necesidad de codificar cada lógica. Tiene un paquete incorporado de SQL que se necesita para la conexión JDBC. 

Sintaxis:

import java.sql* ;

Paso 2: Cargue y registre los controladores

Esto lo hace JVC (Java Virtual Machines) que carga ciertos archivos de controlador en la memoria secundaria que son esenciales para el funcionamiento de JDBC.

Sintaxis:

forName(com.mysql.jdbc.xyz);

El método class.forname() es el enfoque más común para registrar controladores. Carga dinámicamente el archivo del controlador en la memoria. 

Ejemplo:

try {
   Class.forName("oracle.jdbc.driver.OracleDriver");
}
catch(ClassNotFoundException e) {
   System.out.println("cant load driver class!");
   System.Exit(1);
}

Aquí, se utiliza la base de datos Oracle. Ahora consideremos un ejemplo aleatorio de sistemas de administración de bases de datos de hoteles. Ahora aplicando comandos SQL sobre ella nombrando esta base de datos como ‘muestra’. Ahora suponga que el usuario comienza a insertar tablas en su interior con el nombre de «muestra1» y «muestra2».

Java

// Connections class
  
// Importing all SQL classes
import java.sql.*;
  
public class connection{
 
// Object of Connection class
// initially assigned NULL
Connection con = null;
 
public static Connection connectDB()
{
    try
    {
         
        // Step 2: involve among 7 in Connection
        // class i.e Load and register drivers
 
        // 2(a) Loading drivers using forName() method
        // Here, the name of the database is mysql
        Class.forName("com.mysql.jdbc.Driver");
 
        // 2(b) Registering drivers using DriverManager
        Connection con = DriverManager.getConnection(
            "jdbc:mysql://localhost:3306/database",
            "root", "1234");
             
        // Root is the username, and
        // 1234 is the password
 
        // Here, the object of Connection class is return
        // which further used in main class
        return con;
    }
 
    // Here, the exceptions is handle by Catch block
    catch (SQLException | ClassNotFoundException e)
    {
         
        // Print the exceptions
        System.out.println(e);
 
        return null;
    }
}
}

Paso 3: Crea una conexión

La creación de una conexión se logra mediante el método getconnection() de la clase DriverManager, que contiene la URL de la base de datos, el nombre de usuario y la contraseña como parámetro. 

Sintaxis:

public static Connection getConnection(String URL, String Username, String password)  
throws SQLException  

Ejemplo:

String URL = "jdbc:oracle:thin:@amrood:1241:EMP";
String USERNAME = "geekygirl";
String PASSWORD = "geekss"
Connection conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);

Aquí, 

La URL de la base de datos parece- jdbc:oracle:thin:@amrood:1221:EMP
El nombre de usuario es-“geekygirl”
Las contraseñas son-“geekss”

Paso 4: Crear una declaración

La declaración de consulta se crea para interactuar con la base de datos siguiendo la sintaxis adecuada. Antes de escribir la consulta, debemos conectar la base de datos usando el método connect(). Por ejemplo:

conn = connection.connectDB();
String sql = "select * from customer";

Esta declaración muestra básicamente el contenido de la tabla de clientes. También podemos crear una declaración utilizando el método createStatement() de la interfaz Connection. Aquí, el objeto de la declaración es el principal responsable de ejecutar consultas.

Sintaxis:

public Statement createStatement()throws SQLException 

Ejemplo:

Statement s = conn.createStatement();

Paso 5: Ejecutar la consulta

Para ejecutar la consulta (escrita arriba), necesitamos convertir la consulta en formato legible por JDBC, para eso usamos la función de instrucción preparada() y para ejecutar la consulta convertida, usamos la función de ejecución de consulta() de la interfaz de declaración. Devuelve el objeto de «rs» que se utiliza para encontrar todos los registros de la tabla.

Sintaxis:

public rs executeQuery(String sql)throws SQLException  

Ejemplo:

p = conn.prepareStatement(sql);
rs = p.executeQuery();

Paso 6: Procesar los resultados

Ahora verificamos si el método rs.next() no es nulo, luego mostramos los detalles de ese cliente en particular presente en la tabla «cliente». La función next() básicamente verifica si hay algún registro que satisfaga la consulta, si ningún registro satisface la condición, entonces devuelve nulo. A continuación se muestra el código de muestra: 

while (rs.next())
{  
    int id = rs.getInt("cusid");
    String name = rs.getString("cusname");
    String email = rs.getString("email");
    System.out.println(id + "\t\t" + name + 
                            "\t\t" + email);
}

Paso 7: Cierra la conexión

Después de realizar todas las operaciones, es necesario cerrar la conexión JDBC después de que ya no se necesite la sesión de la base de datos. Si no se hace explícitamente, entonces el recolector de basura de Java hace el trabajo por nosotros. Sin embargo, siendo un buen programador, aprendamos cómo cerrar la conexión de JDBC. Entonces, para cerrar la conexión JDBC, se usa el método close(), este método cierra toda la conexión JDBC. 

Sintaxis:

public void close()throws SQLException  

Ejemplo:

conn.close();

El código de muestra se ilustra arriba:

Java

// Importing SQL libraries to create database
import java.sql.*;
   
class GFG{
   
// Step 1: Main driver method
public static void main(String[] args)
{
     
    // Step 2: Creating connection using
    // Connection type and inbuilt function
    Connection con = null;
    PreparedStatement p = null;
    ResultSet rs = null;
 
    con = connection.connectDB();
 
    // Here, try block is used to catch exceptions
    try
    {
         
        // Here, the SQL command is used to store
        // String datatype
        String sql = "select * from customer";
        p = con.prepareStatement(sql);
        rs = p.executeQuery();
 
        // Here, print the ID, name, email
        // of the customers
        System.out.println("id\t\tname\t\temail");
 
        // Check condition
        while (rs.next())
        {
            int id = rs.getInt("id");
            String name = rs.getString("name");
            String email = rs.getString("email");
            System.out.println(id + "\t\t" + name +
                                    "\t\t" + email);
        }
    }
 
    // Catch block is used for exception
    catch (SQLException e)
    {
         
        // Print exception pop-up on the screen
        System.out.println(e);
    }
}
}

Producción:

Publicación traducida automáticamente

Artículo escrito por pradiptamukherjee y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *