¿Cómo conectar la base de datos en Java? El - Interfaces y operación JDBC

Tabla de contenido:

Anonim

¿Cómo conectar la base de datos en Java?

Al escribir una aplicación de TI utilizando cualquier lenguaje de programación, el flujo de datos desde y hacia la aplicación sirve a la funcionalidad principal. Si el flujo de datos se ve afectado de alguna manera, puede afectar negativamente la funcionalidad de la aplicación y puede causar una gran pérdida para el negocio.

Existen diferentes métodos disponibles hoy para conectar su programa a una base de datos con el fin de proporcionar a los usuarios la información que solicitan, recopilar información de los usuarios, eliminar la información requerida por el usuario y también actualizar los datos a la base de datos diariamente.

Vamos a analizar uno de estos enfoques utilizando Java como nuestro lenguaje de programación, JDBC como método de conectividad de base de datos y siguiendo el enfoque orientado a objetos.

¿Qué es el JDBC?

JDBC significa Java Database Connectivity y ayuda a un programa Java a realizar diferentes tipos de operaciones sobre la base de datos, como crear, leer, actualizar y eliminar. Además, JDBC es una API de Java.

Al usar JDBC, un programador debería ser capaz de:

  • Establecer una conexión con la base de datos
  • Ejecute comandos SQL enviándolo a la base de datos
  • Interpreta los resultados que provienen de la base de datos.

Crear una base de datos para conectar la base de datos en Java

Antes de trabajar con JDBC, se requiere tener una base de datos para conectarse a ella. Haremos uso de la base de datos Oracle por el bien de nuestra ilustración. Descargue oracle 11g express edition desde el siguiente enlace.

https://www.oracle.com/technetwork/products/express-edition/overview/index-100989.html

Ya tengo el instalador de Oracle 10g listo como puedes ver a continuación:

Fuente : desde mi escritorio

  • Haga doble clic en el instalador, aparecerá la siguiente pantalla. Haga clic en Siguiente.

Fuente : desde mi escritorio

  • Acepte el acuerdo de licencia y haga clic en Siguiente.

Fuente : desde mi escritorio

  • Mantenga la configuración predeterminada tal como está y haga clic en Siguiente.

Fuente : desde mi escritorio

  • Le pedirá una contraseña que será necesaria cuando inicie sesión en la instancia de Oracle 11g. Proporcione la contraseña y haga clic en siguiente.

Fuente : desde mi escritorio

  • Después de proporcionar la contraseña, comenzará el proceso de instalación. Una vez finalizada la instalación, se creará un icono de acceso directo en la pantalla de su escritorio. Si no puede encontrarlo, vaya al inicio de Windows y busque Oracle, debería obtenerlo. Haga clic en él y se abrirá un cliente ligero para usted a través de un navegador. Inicie sesión en la instancia. Tenga en cuenta que el nombre de usuario será el mismo para Oracle DB, es decir, el sistema. La contraseña será la que proporcionó al configurar la base de datos.

Fuente: desde mi escritorio

  • Ahora, una vez que inicie sesión, la primera pantalla que verá se verá a continuación:

Fuente: desde mi escritorio

  • Ahora creemos una tabla. Haga clic en el módulo SQL de la pantalla anterior y ejecute la consulta a continuación.

Fuente: desde mi escritorio

  • Como puede ver, hemos creado con éxito una tabla con el nombre Educba.

Conectar base de datos en Java

Hay pocas interfaces y clases que se utilizan para conectarse a una base de datos y realizar operaciones utilizando la API JDBC.

Le explicaremos uno por uno, pero primero permítame presentarle el siguiente programa:



Fuente: desde mi escritorio

A continuación se muestran las interfaces que utilizaremos para conectarnos a la base de datos y realizar operaciones sobre ella:

  1. Gerente de conductor
  2. Conexión
  3. Declaración
  4. Conjunto resultante
  5. Declaración preparada

Veamos las operaciones que podemos realizar como parte de la operación JDBC.

  1. Almacenar los datos de una entidad en una base de datos, es decir, la operación de creación
  2. Recuperar los datos a la entidad o un bean de una base de datos.
  3. Actualice los datos para la entidad o el bean en la base de datos
  4. Elimine o elimine los datos de la entidad o un bean de la base de datos.

No importa qué operación realicemos, hay algunos pasos básicos que seguirían siendo los mismos:

1. Cargue el controlador.

Class. forName ("oracle.jdbc.driver.OracleDriver");

2. Crear una cadena de URL

String url="jdbc:oracle:thin:@172:.26.132.40:1521:orclilp";

3. Use el administrador de controladores para crear una conexión

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

4. Use la referencia de conexión para crear una declaración

stmt = conn.createStatement();

5. Use una instrucción para ejecutar la consulta.

6. Procesar el conjunto de resultados (opcional, depende)

7. Libere los recursos en finalmente bloque.

Ilustración

Como estamos usando la base de datos Oracle en nuestra ilustración, necesitamos tener el controlador requerido que debe proporcionar Oracle. La clase de controlador generalmente tiene la forma de un archivo jar con el nombre ojdbc14.jar. Este controlador debe importarse a su programa java como parte de "Bibliotecas referenciadas" si no está allí.

Si ha instalado Oracle 11g en su carpeta C, puede encontrarlo idealmente en la siguiente ruta: (Si no está allí, puede descargarlo fácilmente desde aquí)

C: \ oraclexe \ app \ oracle \ product \ 10.2.0 \ server \ jdbc \ lib

Fuente: desde mi escritorio

Muchos archivos jar deberían estar disponibles, sin embargo, ojdbc14.jar es el último. Lo mismo puede usarse para nuestro propósito. Este jar debe agregarse al classpath del proyecto. Por favor revise la imagen de abajo.

Fuente: desde mi escritorio

Permítanos crear una tabla de artista con los siguientes atributos: (Puede ejecutar directamente la línea de comando SQL que viene como un módulo separado de la edición Oracle Express. Pero primero necesita conectarse y puede ejecutar el comando "conectar" para conectarse a la base de datos.

Fuente: desde mi escritorio

Como parte de esta ilustración, estaríamos creando tres clases de Java, es decir, Artist.java, CreateTable.java y ArtistManagementDao.java para lograr esto.

También en la capa de Java, necesitamos crear una clase llamada Artist bean. Esta clase debe tener atributos del Artista con el contexto anterior. Se verá a continuación:

Artist.java

Creemos otras 2 clases de Java con el nombre ArtistManagementDao y CreateTable.java

ArtistManagementDao.java

package com;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class ArtistManagementDao (
private final static String DRIVERNAME="oracle.jdbc.driver.OracleDriver";
private final static String URL="jdbc:oracle:thin:@LENOVO-PC:1521:XE";
private final static String USERNAME="System";
private final static String PASSWORD="Your DB password";
private Connection con =null;
public void addArtist(Artist a)
(
try (
Class.forName(DRIVERNAME);
String sql="insert into Artist1 values (?, ?)";
con=DriverManager.getConnection(URL, USERNAME, PASSWORD);
PreparedStatement pst=con.prepareStatement(sql);
pst.setString(1, a.getArtistID());
pst.setString(2, a.getArtistName());
pst.executeUpdate();
) catch (ClassNotFoundException e) (
// TODO Auto-generated catch block
System.out.println(e);
) catch (SQLException e) (
System.out.println(e);
)
)
)

CreateTable.java

package com;
import java.sql.*;
public class CreateTable(
static final String DB_URL = "jdbc:oracle:thin:@LENOVO-PC:1521:XE";
static final String USER = "System";
static final String PASS = "Your DB Password";
public static void main(String() args) (
Connection conn = null;
Statement stmt = null;
try(
ArtistManagementDao am=new ArtistManagementDao();
Artist a=new Artist();
Class.forName("oracle.jdbc.driver.OracleDriver");
System.out.println("Connecting to a selected database…");
conn = DriverManager.getConnection(DB_URL, USER, PASS);
System.out.println("Connected to database successfully");
System.out.println("Creating table");
stmt = conn.createStatement();
//ARTIST TABLE
String sql = "CREATE TABLE Artist3 " +
"(ArtistID varchar2(5) primary key not NULL, " +
" ArtistName varchar2(25))";
stmt.executeUpdate(sql);
System.out.println("Created table in given database…");
a.setArtistId("abc");
a.setArtistName("ankit");
am.addArtist(a);
System.out.println("\nArtistID="+a.getArtistID()+"\nArtistName="+a.getArtistName());
)catch(SQLException se)(
se.printStackTrace();
)catch(Exception e)(
e.printStackTrace();
)finally(
try(
if(stmt!=null)
conn.close();
)catch(SQLException se)(
)
try(
if(conn!=null)
conn.close();
)catch(SQLException se)(
se.printStackTrace();
)
)
)
)

CreateTable.java Explicación:

1. Primero creamos la URL de DB que debe tener el nombre de su computadora, así como el número de puerto de DB (idealmente 1521), precedido por JDBC: oracle: thin: @. Luego, hemos creado un nombre de usuario y una contraseña para pasar estos atributos durante el tiempo de conexión de la base de datos. Se recomienda encarecidamente cifrar estos valores en el entorno de producción.

2. En la clase CreateTable.java, hemos creado un objeto "am" y "a" de las clases ArtistManagementDao.java y Artist.java respectivamente.

3. Luego intentamos establecer nuestra conexión siguiendo los pasos que aprendimos anteriormente usando una declaración conn.

4. Luego, creamos una tabla con el nombre Artist3 y actualizamos la base de datos o la enviamos a la base de datos mediante la ejecución de la instrucción.

5. Ahora, si quisiéramos asignar valores a los atributos, haremos uso del objeto que hemos creado para la clase de artista y haremos una nota, no es esta clase la que insertará el valor en la Base de datos, sino que será ArtistmanagementDao clase. Ya tenemos valores almacenados en los atributos a partir de ahora y veremos en la clase de día cómo enviar esto a la base de datos.

6. Finalmente, hemos utilizado el objeto "am" de ArtistManagementDao para pasar este objeto "a" al método addArtist () de ArtistManagementDao clase java.

7. También hemos tratado de atrapar bloqueos para detectar excepciones y descartar lo mismo.

ArtistManagementDao Explicación:

1. La clase Dao nos ayuda a aislar la aplicación / capa empresarial de la capa de persistencia. Esta suele ser la base de datos relacional.

2. Primero creamos la URL de DB que debería tener el nombre de su computadora, así como el número de puerto de DB (idealmente 1521), precedido por JDBC: oracle: thin: @. Luego, hemos creado un nombre de usuario y una contraseña para pasar estos atributos durante el tiempo de conexión de la base de datos. Se recomienda encarecidamente cifrar estos valores en el entorno de producción.

3. Dentro del método addArtist, tratamos de establecer nuestra conexión siguiendo los pasos que aprendimos anteriormente usando una declaración conn.

4. Ahora, hemos utilizado el método de inserción para enviar valores de los atributos a la base de datos.

5. En la siguiente declaración, para probar, tenemos la declaración get para recuperar valores de la base de datos.

6. También hemos tratado de atrapar bloques para detectar excepciones y descartar lo mismo.

Artículos recomendados

Esta ha sido una guía sobre cómo conectar la base de datos en Java. Aquí hemos discutido cómo conectar la base de datos en Java junto con las interfaces y las clases utilizadas para conectar una base de datos. También puede consultar los siguientes artículos para obtener más información:

  1. ¿Qué es el servidor SQL?
  2. ¿Es Big Data una base de datos?
  3. Cómo funciona JavaScript
  4. Preguntas de entrevista de subprocesos múltiples en Java