Sei sulla pagina 1di 4

JDBC AVANZADOS

Pasos para desarrollar una Aplicacion JDBC

1. Cargar y registrar Driver


2. Establecer la conexión entre la aplicación Java y la Base de Datos
3. Crear un objeto Statement
4. Enviar y ejecutar la consulta SQL
5. Procesar el resultado del ResultSet
6. Cerrar la conexión

Storage Areas

Existen dos tipos de storage areas, store area temporal y store area permanente.

Storage Area Permanente: Entre ellas tenemos: FileSystem, Base de datos, Dataware House, Big
Data

ARQUITECTURA JDBC

JAVA APPLICATION

JDBC API

DRIVER MANAGER

DRIVER DRIVER DRIVER


FOR FOR FOR
ORACLE MYSQL POSTGRESQL

ORACLE POSTGRES
MYSQL
DB DB
DB
1. JDBC API provee drivermanager a las aplicaciones java.
2. Las aplicaciones Java pueden comunicarse con cualquier DB con la ayuda del
DriverManager y el Diver software especifico de cada BD

DiverManager

1. Es el componente clave en la arquitectura JDBC


2. Es una clase presente en el paquete java.sql
3. Es el responsable de administrar todos los Database drivers
4. Es el responsable de registrar y des-registrar los Database drivers
5. Es el responsable de establecer coneccion a la BD con la ayuda del driver para la BD:
Connection cnn = DriverManager.getConnection(jdbcUrl, userName, password)

Database Driver

1. Es un componente muy importante dentro de la arquitectura JDBC


2. Sin el Driver DB no podemos tener contacto con la BD
3. Este es el puente entre la aplicación java y la BD
4. Es el responsable de conectar las llamada java hacia la BD y las respuestas de la BD a la app
Java

JDBC Url

1) main_protocol : 2)subprotocol : 3)subname


1) jdbc
2) driver protocol
3) connection details

Statement st = con.createStatement();
Sql query tiene 3 metodos.

1. ExecuteQuery(): Si conocemos el tipo de query al inicio y siempre es un select query


entonces deberiamos utilizar executeQuery(). Ejemplo:
ResultSet rs = stmt.executeQuery(“select * from employees”);
2. executeUpdate(): Si conocemos el tipo de query al inicio, y siempre es un non-selected-
query entonces deberiamos utilizar para executeUpdate() el metodo
int rowCount = stmt.executeUpdate(“delete from employees where mno=1”)
3. execute(): Si no conocemos el tipo de query al inicio y esta disponible dinamicamente al
tiempo de ejecucion (quizas desde un achivo de propiedades o desde consola) entonces
deberiamos utilizar de execute() el metodo:
boolean b = stmt.execute(provisto dinamicamente);
if(b == true) // es un selected query
{
ResultSet rs = stmt.getResultSet();
}
else
{
int updateCount = stmt.getUpdateCount();
sout(“el numero de filas afectadas ” + updateCount);
}
executeUpdate vs DDL Queries

int rowCount = stmt.executeUpdate(“create table employee(mno number)”);

Esta sentencia retona como valor rowCount = 0

Potrebbero piacerti anche