Trabajo de jdbc

16
JDBC

Transcript of Trabajo de jdbc

Page 1: Trabajo de jdbc

JDBC

Page 2: Trabajo de jdbc

CAPA DE ACCESO DE DATOS, CREACIÓN

 

1. Acceso de JDBC a Bases de DatosEl API JDBC soporta dos modelos diferentes de acceso a Bases de Datos, los modelos de dos y tres capas.

2. Modelo de dos capasEste modelo se basa en que la conexión entre la aplicación Java o el applet que se ejecuta en el navegador, se conectan directamente a la base de datos.

Page 3: Trabajo de jdbc

3. Modelo de tres capas

En este modelo de acceso a las bases de datos, las instrucciones son enviadas a una capa intermedia entre Cliente y Servidor, que es la que se encarga de enviar las sentencias SQL a la base de datos y recoger el resultado desde la base de datos. En este caso el usuario no tiene contacto directo, ni a través de la red, con la máquina donde reside la base de datos.

Page 4: Trabajo de jdbc

CREACIÓNSe requieren los siguientes pasos para crear una nueva base de datos usando la aplicación JDBC.

Importe los paquetes: Requiere la inclusión de los paquetes que contienen las clases JDBC necesarios para la programación de base de datos. Muy a menudo, el uso de import java.sql. Será suficiente.

Registrar el controlador JDBC: Requiere que se inicializa un controlador para que pueda abrir un canal de comunicación con la base de datos.

Abrir una conexión: Requiere utilizando el método DriverManager.getConnection( ) para crear un objeto de conexión, lo que representa una conexión física con el servidor de base de datos.

Page 5: Trabajo de jdbc

CONFIGURACIÓN DE CONEXIÓN BD CON NETBEANS

Primero extraes el Driver en un lugar especifico que te parezca cómodo, por ejemplo a la ruta C:mysqlDriver. Luego entra a Netbeans y sitúate en la barra de herramientas “Projects“.

Page 6: Trabajo de jdbc

Ahora haz clic derecho en la carpeta “libraries” y presiona la opción “add JAR/FOLDER…”.

Ahora busca el archivo “mysql-connector-java-5.1.31-bin.Jar” en la carpeta descomprimida.

Page 7: Trabajo de jdbc

Cuando hayas incluido el archivo, el explorador de proyectos mostrará una nueva dependencia hacia el conector. Ahora ya puedes conectar tu aplicación Java y una base de datos en Mysql.

Page 8: Trabajo de jdbc

Consiste en un conjunto de clases e interfaces escritas en el lenguaje de programación Java. JDBC suministra un API estándar para los desarrolladores y hace posible escribir aplicaciones de base de datos usando un API puro Java.

DEFINICIÓN DE JDBC

Page 9: Trabajo de jdbc

Hay 4 tipos de manejadores JDBC:TIPOS DE

MANEJADORES

ODBC es un API estándar semejante a JDBC, que permite que lenguajes como C++ accedan de un modo estándar a distintos sistemas de BD. Permite la conexión desde Java a BD que no proveen manejadores JDBC.

Puente JDBC-ODBC

Manejador de API nativo

Estos manejadores son más eficientes y tienen menos puntos de fallo que el puente JDBC-ODBC ya que hay menos capas entre el código de la aplicación y la base de datos.

Page 10: Trabajo de jdbc

Manejador de JDBC- Net

El manejador se comunica con un servidor intermedio que se encuentra entre el cliente y la base de datos.No se requiere ningún tipo de código nativo en el cliente, por lo que la portabilidad de la aplicación está garantizada: el manejador es tecnología 100% Java.

Manejador de Protocolo Nativo

Es el manejador que tiene mejor rendimiento, pero está más ligado a la base de datos que empleemos que el manejador tipo JDBC-Net, donde el uso del servidor intermedio nos da una gran flexibilidad a la hora de cambiar de base de datos. Este tipo de manejadores también emplea tecnología 100% Java. 

Page 11: Trabajo de jdbc

APLICACIONES Establece una conexión con una base de datos. Enviar una consulta SQL a la base de datos. Procesar los resultados de la consulta.

USO DE LAS CLASES CLASS,

CONNECTION, DRIVERMANAGER

La claseEs la que nos dice los componentes del ejemplar que vamos a crear, es decir, una clase contiene los atributos y los métodos que conformarán al ejemplar o instancias.

Page 12: Trabajo de jdbc

De este modo al momento de crear una clase en Java, debemos especificar el tipo y el nombre (como mínimo) de los atributos y adicionalmente debemos especificar (si existen) los métodos o funciones, el tipo de dato que retornan, el nombre y los parámetros que reciben dichos métodos.

ConnectionRepresenta una conexión con la base de datos. Permite crear objetos que representan consultas que se ejecutarán en la base de datos, y permite acceder a información sobre la base de datos y las posibilidades del manejador JDBC.

Page 13: Trabajo de jdbc

DriverManager

Esta clase es la gestora de los diversos drivers (manejadores) que existan en nuestra aplicación. Es posible que sea necesario que en una misma aplicación se tenga varios manejadores para acceder a varias bases de datos.

Los métodos que más nos interesan de esta clase son: static Connection getConnection(String url); static Connection getConnection(String url, String user, String password).

Page 14: Trabajo de jdbc

Estos métodos intentan establecer conexión con la base de datos que le indiquemos en el campo url, empleando para ellos todos los manejadores que hemos registrado.

Lo que hace la clase DriverManager para intentar establecer conexión con la base de datos es invocar al método connect de la interface Driver, interface que como veremos deben implementar todos los manejadores.

Realiza esta operación con todos los manejadores que tiene registrados, si el manejador devuelve null significa que no se ha podido conectar con la base de datos, y el gestor intenta de nuevo conectarse con otro manejador.

Page 15: Trabajo de jdbc

EJEMPLOS

Incluir el jar con el Driver de la base de datos

Cargar el driver try {    Class.forName("com.mysql.jdbc.Driver"); } catch (ClassNotFoundException ex) { log.error("No se encontro el Driver MySQL para JDBC."); }

Establecer una conexión con la base de datos

//Connection cn = DriverManager.getConnection(“ jdbc:mysql://servidor_bd:puerto/nombre_bd", "usuario", "contraseña"); Connection cn = DriverManager.getConnection("jdbc:mysql://localhost:3306/cuentas", "root", "");

Page 16: Trabajo de jdbc