JDBC

JDBC

 1. QUE ES JDBC

 Java Database Connectivity

 Es una interfaz de acceso a bases de datos conexión SQL, también proporciona una base común para la construcción de herramientas y utilidades de alto nivel. [2]

 Este API Java ejecuta consultas SQL en Bases de Datos Relacionales, Independiente del Sistema Gestor Relacional. [1]

 

Se divide en dos paquetes [1]

ü      java.sql, dentro de J2SE

ü      javax.sql extensión dentro de J2EE

 

Es importante resaltar que  Para acceder a una base de datos es necesario de un driver.

 

El API JDBC facilita programar el acceso a BD sin que se tenga en cuenta a que Servidor nos dirigimos (Oracle, Sybase, Informix, etc.).[3]

 

 

2. QUE OFRECE [1]

 

El Api ofrece las clases e interfaces para:

 

ü      Establecer una conexión a una base de datos.

ü      Ejecutar una consulta.

ü      Procesar los resultados.

 

A continuación mostraremos el código para establecer una conexión.

 

// Establece la conexión

Connection con = DriverManager.getConnection (

“jdbc:odbc:miBD”, ”miLogin”, ”miPassword”);

// Ejecuta la consulta

Statement stmt = con.createStatement();

ResultSet rs = stmt.executeQuery(“SELECT nombre, edad FROM Empleados”);

// Procesa los resultados

while (rs.next()) {

String nombre = rs.getString(”nombre”);

int edad = rs.getInt(”edad”);

} [1]

 

ARQUITECTURA

 

 

Fuente http://dis.um.es/~jbermudez/dad/transparencias/T4-JDBC0506.pdf

 

Mecanismo JDBC [2]

 

ü      Establecer conexión.

ü      Crear sentencia.

ü      Ejecutar sentencia.

ü      Procesar resultados.

ü      Finalizar sentencia.

ü      Cerrar conexión.

 

 

3. COPMONENTES

 

3.1 QUE ES UN DRIVER [1]

 

Un dirver es un conjunto de clases encargadas de implementar las interfaces del API y acceder a la base de datos.

 

Existen diferentes tipos de driver`s

 

ü      Driver Tipo 1:

 

Son los que utilizan un API nativa estándar

Ejemplo: puente JDBC:ODBC.

 

ü      Driver Tipo 2:

 

Son los que utilizan un API nativa de la base de datos

Ejemplo: Oracle OCI.

 

ü      Driver Tipo 3:

 

Servidor remoto con un API genérica.

Útil para aplicaciones en internet.

 

ü      Driver Tipo 2:

 

Totalmente desarrollado en Java

Ejemplo: Oracle Thin.

 
 

 

 

 

Fuente http://www.it.uniovi.es/docencia/Telematica/appTel/material/Practicas3.pdf

 

3.2 CLASES DE OBJETOS [5]

 

DriverManager: Carga, elige drivers

Driver: Se conecta con la base de datos actual

Connection: Una serie de sentencias SQL hacia y desde la BD

Statement: Un sentencia SQL

ResultSet: Los registros obtenidos de la sentencia SQL

 

 

3.3 CLASES DE JDBC

 

 
 

 

 

Fuente http://zarza.usal.es/~fgarcia/docencia/poo/04-05/Trabajos/JDBC.pdf

 

3.4 CONSULTAS JDBC [1]

 

El API JDBC no restringe las sentencias que se envían a la Base de datos.

 

En principio, todos los drivers deben ser compatibles con ANSI SQL-2 Entry Level.

 

 

3.5 TIPOS DE SENTENCIAS: [3]

 

 

Existen tres tipos de sentencias:

 

Statement: Sentencias SQL estáticas (su código se conoce en tiempo de compilación) Se crean mediante el método createStatement() de la clase Connection

 

PreparedStatement: creadas por el método prepareStatement(). Dan soporte a SQL dinámico (parte de la sentencia se precompila y parte se sustituye en tiempo de ejecución). Eficiente para sentencias de ejecución reiterada

CallableStatement: creada por el método prepareCall() destinada a la ejecución de procedimientos almacenados

 

El API distingue dos tipos de consultas:

Consultas: SELECT

Actualizaciones: INSERT, UPDATE, DELETE, sentencias DDL

 

 

3.5.1 RESULT SET [1]

 

Es un proxy sobre los registros del resultado de la búsqueda que controla la recuperación de los registros.

 

Representa un cursor (iterador) sobre los resultados.

ü      Movimiento: métodos next() y previous()

ü      Inicialmente el cursor está posicionado antes del primer registro.

 

Depende del objeto consulta: Cada vez que se realice una consulta se pierden los resultados.

 

RESULT SET

Existen dos alternativas para acceder a las columnas del resultado:

ü      rs.getString(“nombre de la columna”);

ü      rs.getString(1); -> Posición en la consulta

 

El acceso por posición es útil cuando accedemos a una columna derivada ò cuando hay columnas con los mismos nombres (join).

 

4. Instalación de JDBC [2]

 

Para acceder a BBDD en Java es necesario:

 

Tener instalado el entorno de desarrollo de java (SDK).

Tener instalada la API JDBC (normalmente incluido en el SDK).

Disponer del driver java para el gestor de BBDD escogido o usar el puente JDBC-ODBC.

Además de la API JDBC, el driver del gestor es una de las partes fundamentales para al acceso a los datos. Es posible usar un driver java específico del gestor a acceder o se puede usar el driver JDBC-ODBC incluido en la API.

 

 

5. BASES DE DATOS EN ENTORNOS WEB

 

Son importantes las conexiones de bases de datos en entornos web ya que se presentan múltiples conexiones simultáneas a la base de datos y por que el establecimiento de una conexión es costoso.

 

Para esto es necesario definir cuidadosamente las transacciones y establecer algún mecanismo para optimizar el uso de conexiones.

 

 

Este servicio es útil en a construcción de aplicaciones en que se debe acceder  a información disponible en Web Servicie y en bases de datos ofreciendo una interfase homogénea para dichos accesos y permitiendo una integración a través del controlador. [4]

 

 

 

6. WEBGRAFIA

 

 

1 http://dis.um.es/~jbermudez/dad/transparencias/T4-JDBC0506.pdf

 

2 http://zarza.usal.es/~fgarcia/docencia/poo/04-05/Trabajos/JDBC.pdf

 

 

3 http://www.miclase-online.com/tutoriales/computacion/programacion/AccesoBDJava.pdf

 

4 http://www3.uji.es/~berlanga/Chronology/jisbd2003_jordi.pdf

 

5 http://www.it.uniovi.es/docencia/Telematica/appTel/material/Practicas3.pdf

 

«

Escribe un comentario