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
Archivado bajo: JDBC | Etiquetado: Add new tag, JDBC


