Cuando salimos de entornos propietarios como puede ser Acces, entramos en el gran mundo de las bases de datos, Oracle, MySQL, MsSQL son motores que están a nuestro alcance; y si queremos utilizarlos, debemos saber algunas cosas.
El API JDBC
La API JDBC define las interfaces y clases Java que utilizan los programadores para conectar con bases de datos y enviar consultas. Un controlador JDBC implementa dichas interfaces y clases para un determinado proveedor de DBMS.
Un programa Java que utiliza la API JDBC carga el controlador especificado para el DBMS particular antes de conectar realmente con una base de datos. Luego la clase JDBC DriverManager envía todas las llamadas de la API JDBC al controlador cargado.
Este paquete permite conectarse a una base de datos, consultarla o actualizarla usando SQL.
Así como con Java se logra independencia de la plataforma, al trabajar con JDBC se logra además independencia del proveedor de la base de datos.
Cada proveedor de bases de datos debe generar su propio driver conectable al administrador de drivers. El programador Java utiliza este Driver para no tener que preocuparse de la base de datos con la que trabaja
JDBC sigue un modelo similar al de ODBC (Open Database Connectivity) de Microsoft. ODBC es una API estándar para conectarse a bases de datos. Por esto una opción común es conectar JDBC a través de un driver que actúa como puente entre JDBC y ODBC,
La API JDBC está en los paquetes
- java.sql
- javax.sql
Utilización de Drivers
Hay cuatro tipos de Drivers:
- Puente JDBC-ODBC
- Traduce las llamadas java a ODBC. Las llamadas son ejecutadas mediante el driver ODBC. Se utilizará normalmente en máquinas basadas en Windows que ejecutan aplicaciones de gestión. Por supuesto, puede ser el único modo de acceder a algunas bases de datos de escritorio, como MS Access, dBase y Paradox. La ausencia de complejidad en la instalación y el hecho de que nos permita acceder virtualmente a cualquier base de datos, le convierte en una buena elección. Sin embargo, hay muchas razones por las que se desecha su utilización.
- Nativo API
- Utilizan la interfaz de métodos nativos de Java para convertir las solicitudes de API JDBC en llamadas específicas a bases de datos para RDBMS como SQL Server, Informix, Oracle o Sybase,
- Protocolo de red
- Los drivers JDBC de tipo 3 están implementados en una aproximación de tres capas por lo que las solicitudes de la base de datos JDBC están traducidas en un protocolo de red independiente de la base de datos y dirigidas al servidor de capa intermedia. El servidor de la capa intermedia recibe las solicitudes y las envía a la base de datos utilizando para ello un driver JDBC del tipo 1 o del tipo 2
- Protocolo nativo
- Estos drivers traducen JDBC directamente a protocolo nativo sin utilizar ODBC o la API nativa, por lo que pueden proporcionar un alto rendimiento de acceso a bases de datos.
Algunos drivers frecuentes:
MySQL |
Driver; com.mysql.jdbc.Driver Url: jdbc:mysql://hostname:3306/databaseName |
Oracle |
Driver: Oracle.jdbc.driver.OracleDriver Url: jdbc:Oracle.thin@hostname:port/databaseName |
DB2 |
Driver: com.ibm.db2.jdbc.net.DB2Driver Url: jdbc:db2:hostname:port/databaseName |
Access |
Driver:sun.jdbc.odbc.JdbcOdbcDriver Url: jdbc:odbc:databaseName |
Excepto en el caso de utilizar ODBC, que ya debería estar instalado, los drivers para Java, no deberemos instalarlos; se descargan del repositorio del fabricante y se dejan para incorporar al proyecto.
Relacionado
Descubre más desde Recursos para formacion
Suscríbete y recibe las últimas entradas en tu correo electrónico.