ESCUELA ACADÉMICA DE INGENIERÍA DE SISTEMAS Y TELEPÁTICA
ASIGNATURA
LABORATORIO DE PROGRAMACIÓN II
TEMA
JDBC
AUTORES
LUZ CLARITA PEREZ DIAZ
LUZ ISELA FLORES CHIGUEL
LUZ CLARITA CHILCON SANCHEZ
DOCENTE
ING.MARCO AURELIO PORRO CHULLI
BAGUA GRANDE-UTCUBAMBA
AMAZONAS
2017
1.
Contenido
- Capa de Acceso de datos, creación.
Una capa de acceso a datos o DAL (del
inglés data access layer) en los programas informáticos, es una
capa de un programa
informático que proporciona acceso simplificado a los datos
almacenados en el almacenamiento
persistente de algún tipo, tal como una entidad-relación de base de datos.
Este acrónimo se
usa predominantemente en entornos Microsoft ASP.NET.
Por ejemplo, el DAL podría devolver una referencia
al objeto (en
términos de programación
orientada a objetos) completo con sus atributos en lugar de
un registro de campos de
una tabla de
la base de datos. Esto permite que los módulos del cliente (o usuario) se
crearan con un mayor nivel de abstracción.
Este tipo de modelo puede ser implementado mediante la creación de una clase de
métodos de acceso a datos que hacen referencia directamente a un conjunto
correspondiente de procedimientos almacenados de base de datos. Otra aplicación
potencial podría recuperar o escribir registros hacia o desde un sistema de
archivos. El DAL esconde esa complejidad del almacén de datos subyacente del
mundo externo.
Por ejemplo, en lugar de utilizar comandos tales
como insertar, eliminar y actualizar para
acceder a una tabla específica en una base de datos, una clase y unos
procedimientos almacenados se podrían crear en la base de datos. Los
procedimientos se han llamado de un método dentro de la clase, lo que
devolvería un objeto que contiene los valores solicitados. O bien los comandos
inserción, eliminación y actualización podría ser ejecutado en funciones
simples como registerUser o loginUser almacenada
dentro de la capa de acceso a datos.
Ø Configuración de conexión BD con NetBeans.
NetBeans es una plataforma para el desarrollo de aplicaciones de escritorio usando Java y a un Entorno integrado de desarrollo (IDE) desarrollado usando la Plataforma NetBeans.
Si eres un programador y desarrollas tus aplicaciones en Java seguramente necesitarás conectar una base de datos tipo MySQL a este entorno algún día, bueno, si lo necesitas ahora, he aquí una explicación paso a paso de cómo conectar ambas herramientas.
·
Primero que nada necesitas tener un servidor MySQL instalado en tu
equipo o en su defecto en la máquina que actuará como servidor de bases de
datos. Recuerda que MySQL es gratuito y puedes obtenerlo desde aquí.
·
El proceso de instalación es algo en lo que no entraré en detalle, para
cualquier duda puedes consultar la documentación oficial que se encuentra en
su sitio web.
·
Asimismo, debes de tener el NetBeans instalado, de preferencia su última
versión estable (al momento de esta publicación es la 5.5.1) que viene con el
Java Development Kit (JDK) 1.6, lo anterior puedes obtenerlo desde aquí.
·
Una vez que tengas ambas herramientas instaladas necesitaras el driver o
conector a la base de datos de MySQL que puedes obtener desde aquí.
Copiar lo necesario:
Una vez que tengas el NetBeans y el
MySQL Server instalado lo que vas a necesitar es copiar el driver que
descargaste, en mi caso el mysql-connector-java-3.1.11-bin.jar dentro
de la carpeta del JDK, en mi caso es la siguiente ruta:
C:\Archivos de programa\Java\jdk1.6.0_01\jre\lib\ext
*NOTA: Debes tener el
conector dentro de la carpeta anterior antes de ejecutar el NetBeans, en caso
de que esté abierto ciérralo y vuélvelo a abrir.
Ya que lo hayas copiado ahora sí abre el NetBeans y espera a que cargue.
Configurar NetBeans::
Una vez que hayas abierto el NetBeans localiza la sección de Runtime o Tiempo de ejecución que se localiza en el lado izquierdo de la pantalla, como se muestra a continuación:
Al expandir la sección de Databases o Bases de datos debe de aparecer el MySQL (Connector/J driver), en caso contrario debes de agregarlo manualmente como se describe a continuación:
1.
Da un clic derecho sobre Drivers y selecciona New Driver.
Da un clic derecho sobre Drivers y selecciona New Driver.
1.
En la ventana que aparece da clic en el botón
de Add o Agregar y busca el archivo .jar que
descargaste anteriormente, el mismo que copiaste dentro de la carpeta del JDK.
2.
Una vez hecho lo anterior da clic en el botón
de Ok o Aceptar.
Cuando realices los pasos
anteriores debe de aparecer un elemento nuevo en la sección de Drivers dentro
de Databases de nombre MySQL (Connector/Jdriver).
Dentro de la sección de Runtime o Tiempo de ejecución > Databases o Bases de datos > Drivers da un clic derecho sobre MySQL (Connector/J driver) y selecciona Connect Usingo Conectar usando... para que aparezca la pantalla de configuración de la conexión como se muestra a continuación.
Dentro de la sección de Runtime o Tiempo de ejecución > Databases o Bases de datos > Drivers da un clic derecho sobre MySQL (Connector/J driver) y selecciona Connect Usingo Conectar usando... para que aparezca la pantalla de configuración de la conexión como se muestra a continuación.
En la sección de Name o Nombre selecciona MySQL
(Connector/J driver), en la sección Database URL cambia la parte
indicada por por la dirección del servidor de bases de datos, si es la
misma computadora escribe localhost, en la parte de establece
el puerto que definiste al instalar el servidor MySQL , por defecto es el 3306, en
la sección de escribe el nombre de la base de datos a la cual te quieres
conectar. Un ejemplo completo sería jdbc:mysql://localhost:3306/base_de_datos.
Ø Definición
de JDBC. Tipos. Aplicaciones.
|
JDBC es usado para enviar comandos SQL hacia una base
de datos relacional, que puede ser Oracle, Infomix, SyBase, etc.
|
|
Qué hace JDBC?
Establece una conexión con una BD Envía sentencias SQL Procesa los resultados
Connection con = DriverManager.getConnection (
"jdbc:odbc:wombat", "login", "password");
Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM Table1"); while (rs.next()) { int x = rs.getInt("a"); String s = rs.getString("b"); float f = rs.getFloat("c"); } |
|
JDBC es una API de bajo nivel para API´s de
alto nivel
Una integración de SQL hacia Java, es decir que las
sentencias SQL se puedan mezclar con Java, por ejemplo, que una variable de
Java pueda ser usada en una sentencia SQL para recibir o dar valores.
Un mapeo directo de las tablas de la BD hacia las
clases de Java, donde cala fila de la tabla se convierte en una instancia de
la clase, y donde cada columna se corresponde a un atrubuto de esa instancia.
|
|
JDBC v/s ODBC y otras API´s
ODBC no es apropiado para usar directamente con Java por que usa una interfaz en C. Una traducción literal de la API ODBC en C, no es deseable. Por ejemplo Java no tiene punteros y la ODBC hace gran uso de ellos. ODBC es muy difícil de aprender , hace una mezcla de acciones simples y avanzadas. Una API como JDBC es necesario para poder desarrollar una solución “puramente de Java” |
|
Modelos de dos capas y tres capas
|
|
Conformación de SQL
El SQL es el idioma normal por acceder las bases de datos correlativas. Una dificultad es que aunque la mayoría del DBMSs (los Sistemas de Dirección de Base de datos) use un formulario normal de SQL para la funcionalidad básica, ellos no conforman la sintaxis de SQL normal más recientemente definida para la funcionalidad más avanzada. Por ejemplo no todas las BD soportar procedimientos almacenados.
Una manera que el API de JDBC trata de este problema es
permitir cualquier sentencia sea pasada a un driver de DBMS subyacente.
Para las aplicaciones complejas, JDBC trata la
conformación de SQL de otra manera. Proporciona la información descriptiva
sobre el DBMS por medio del DatabaseMetaData para que las aplicaciones puedan
adaptar a los requisitos y capacidades de cada DBMS.
|
||||||||||||||||||||||||||||||||||||||||||||||
|
El Armazón de JDBC
JavaSoft proporciona tres componentes JDBC como la parte de la JDK: el JDBC driver manager, la JDBC driver test suite el puente JDBC-ODBC. El JDBC driver manager es el espinazo de la arquitectura de JDBC. Realmente es bastante pequeño y simple; su función primaria es conectar las aplicaciones de Java al chófer de JDBC correcto y entonces salir de la manera.
La JDBC driver test suite proporciona un poco de
confianza en que drivers de JDBC ejecutarán su programa. Pueden designarse
sólo drivers que pasan la JDBC driver test suite
|
||||||||||||||||||||||||||||||||||||||||||||||
|
El Armazón de JDBC
El puente de JDBC-ODBC les permite a los drivers de ODBC ser usado como drivers de JDBC. Y a largo plazo proporcionará una manera de acceder alguno del DBMSs menos popular si no se crean los drivers de JDBC para ellos.
Tipos de
controladores JDBC
Este tema define los
tipos de controladores JDBC (Java Database Connectivity). Los tipos de
controladores se definen en categorías según la tecnología utilizada para
conectarse a la base de datos. Los proveedores de controladores JDBC utilizan
estos tipos para describir cómo operan sus productos. Algunos tipos de
controladores JDBC son más adecuados que otros para algunas aplicaciones.
Tipo 1
Los controladores de
tipo 1 son controladores "puente". Utilizan otra tecnología, como por
ejemplo, ODBC (Open Database Connectivity), para comunicarse con la base de
datos. Esto representa una ventaja, ya que existen controladores ODBC para muchas
plataformas RDBMS (sistemas de gestión de bases de datos relacionales). La
interfaz Java nativa (JNI) se utiliza para llamar a las funciones ODBC desde el
controlador JDBC.
Un controlador de tipo 1
debe tener el controlador puente instalado y configurado para poder utilizar
JDBC con él. Esto puede representar un grave inconveniente para una aplicación
de producción. Los controladores de tipo 1 no pueden utilizarse en un applet,
ya que los applets no pueden cargar código nativo.
Tipo 2
Los controladores de
tipo 2 utilizan una API nativa para comunicarse con un sistema de base de
datos. Se utilizan métodos nativos Java para llamar a las funciones de la API
que realizan las operaciones de base de datos. Los controladores de tipo 2 son
generalmente más rápidos que los controladores de tipo 1.
Los controladores de
tipo 2 necesitan tener instalado y configurado código binario nativo para
funcionar. Un controlador de tipo 2 siempre utiliza JNI. Los controladores de
tipo 2 no pueden utilizarse en un applet, ya que los applets no pueden cargar
código nativo. Un controlador JDBC de tipo 2 puede requerir la instalación de
algún software de red DBMS (sistema de gestión de bases de datos).
El controlador JDBC de
Developer Kit para Java es un controlador JDBC de tipo 2.
Tipo 3
Estos controladores
utilizan un protocolo de red y middleware para comunicarse con un servidor. A
continuación, el servidor convierte el protocolo a llamadas de función DBMS
específicas de DBMS.
Los controladores de
tipo 3 son la solución JDBC más flexible, ya que no requieren ningún código
binario nativo en el cliente. Un controlador de tipo 3 no necesita ninguna
instalación de cliente.
Tipo 4
Un controlador de tipo 4
utiliza Java para implementar un protocolo de red de proveedor DBMS. Puesto que
los protocolos son generalmente de propiedad, los proveedores DBMS son
generalmente las únicas empresas que suministran un controlador JDBC de tipo 4.
Los controladores de
tipo 4 son todos ellos controladores Java. Esto significa que no existe ninguna
instalación ni configuración de cliente. Sin embargo, un controlador de tipo 4
puede no ser adecuado para algunas aplicaciones si el protocolo subyacente no
maneja adecuadamente cuestiones tales como la seguridad y la conectividad de
red.
El controlador JDBC de IBM Toolbox para Java es un controlador JDBC de tipo 4, lo
cual indica que la API es un controlador de protocolo de red Java puro.
Aplicaciones
|
||||||||||||||||||||||||||||||||||||||||||||||
2.
RESUMEN
Java Database Connectivity (JDBC) es una interfase de
acceso a bases de datos estándar SQL que proporciona un acceso uniforme a una
gran variedad de bases de datos relacionales. JDBC también proporciona una base
común para la construcción de herramientas y utilidades de alto nivel. El
paquete actual de JDK incluye JDBC y el puente JDBC-ODBC. Estos paquetes son
para su uso con JDK 1.0 Drivers JDBC Para usar JDBC con un sistema gestor de
base de datos en particular, es necesario disponer del driver JDBC apropiado
que haga de intermediario entre ésta y JDBC. Dependiendo de varios factores,
este driver puede estar escrito en Java puro, o ser una mezcla de Java y
métodos nativos JNI (Java Native Interface.
3.SUMMARY.
Java Database
Connectivity (JDBC) is a database access interface
SQL standard that
provides uniform access to a wide variety of databases
of relational data. JDBC
also provides a common basis for the
construction of tools
and utilities of high level.
The current JDK package
includes JDBC and the JDBC-ODBC bridge. These packages
are for use with JDK 1.0
JDBC Drivers
To use JDBC with a
particular database manager system, you need to
have the appropriate
JDBC driver to act as intermediary between JDBC and JDBC.
Depending on several
factors, this driver may be written in pure Java, or be
a mixture of Java and
native JNI (Java Native Interface)
4.Recomendaciones
· El
diseño y desarrollo de las nuevas aplicaciones conduce a la minimización del
ingreso de datos por parte del usuario; además el lenguaje de desarrollo que se
utilaza esta orientado a facilitar la ejecución en cualquier Sistema Operativo,
ya que se ajusta a los estándares reconocidos, que permite la flexibilidad de
los cambios
· Se
recomienda a poner en disposición de los alumnos de la Universidad la
Aplicación de consulta de notas, dado que le ahorraría costo y tiempo para la
obtención de las notas requeridas, desde el punto de consultas.
· Para que exista un enlace
remoto con la Base de Datos, la aplicación no debe de conectarse directamente a
la Base de Datos, sino que mediante los drivers JDBC - ODBC.
5.Conclusiones
· Los drivers JDBC y ODBC
establecen la estructura para el diseño y generación de conexiones y accesos a
Base de Datos remotas; por lo que facilita el desarrollo de nuevas aplicaciones
que la Universidad desee implementar en un futuro, orientados con este fin.
· La
aplicación fue desarrollada de tal forma que sea amigable para el usuario; con
solo el ingreso del número de carnet, se despliega las notas del ciclo vigente
y existe la opción de ir y regresar a consultar el historial de notas y el CUM.
Al ser desarrollado en Java existe la ventaja de que la aplicación pueda
ejecutarse en cualquier Sistema Operativo; esto permite a que la aplicación se
adapte a cualquier cambio de estructura que desee generar la Unidad de
Informática de la Universidad.
6.
Apreciación del Equipo
v
Para mí
fue muy elemental investigar en sí la definición del JDBC, y porque se
caracteriza por ser un lenguaje muy utilizado.
v
JDBC como
sabemos es un lenguaje que fue creado; pero con una gran diferencia que este
lenguaje nos ayuda a tener un mayor seguridad en el programa que se está
ejecutando.
7.
Glosario de Términos
rquitectura Java™
para enlaces XML (JAXB)
Tecnología de enlaces Java que soporta la
transformación entre objetos de esquema y Java, así como entre documentos de
instancia XML e instancias de objeto Java.
Java Database
Connectivity (JDBC)
Estándar de la industria para conectividad
independiente de la base de datos entre la plataforma Java y un amplio rango de
bases de datos. La interfaz JDBC proporciona una API a nivel de llamada para
acceso de base de datos basado en SQL y en XQuery. Vea también Open Database Connectivity.
Java EE
Arquitectura estándar para conectar la plataforma
J2EE a sistemas de información empresarial (EIS) heterogéneos.
Java Message
Service (JMS)
Interfaz de programación de aplicaciones que
proporciona funciones en lenguaje Java para gestionar mensajes. Vea
también Interfaz de aplicaciones de
mensajería (AMI) y Interfaz de Colas de Mensajes (MQI).
Java Platform,
Enterprise Edition (Java EE)
Entorno para desarrollar y desplegar aplicaciones
empresariales, definidas por Sun Microsystems Inc. La plataforma Java EE
consiste en un conjunto de servicios, interfaces de programación de
aplicaciones (API) y protocolos que ofrecen las funciones para desarrollar
aplicaciones basadas en la web, de varios niveles. (Sun)
JVM (Java Virtual
Machine)
Implementación de software de un procesador que
ejecuta código Java compilado (applets y aplicaciones).
JavaScript Object
Notation (JSON)
Formato ligero de intercambio de datos de fácil
lectura y escritura. Las máquinas pueden analizar y generar JSON con facilidad.
JSON se basa en un subconjunto del lenguaje de programación JavaScript, Estándar
ECMA-262 3ª edición - diciembre de 1999 [PDF] .
JSON es una representación textual independiente del lenguaje, pero que usa
convenciones que resultan familiares a los programadores de los lenguajes de
programación de la familia de C. JSON puede describirse mediante un esquema
JSON.
JAXB
JCA
JCL
JDBC
JMS
8.Bibliografía o Linkografia
ahí le dejo algunas diapositivas de JDBC
https://www.slideshare.net/LUZCLARITAPEREZDIAZ/jdbc-79998203





