Este libro sigue fielmente los contenidos expuestos en el módulo de Acceso a datos perteneciente al título de Técnico Superior en Desarrollo de Aplicaciones Multiplataforma (Real Decreto 450/2010, de 16 de abril, publicado en BOE con fecha 20 de mayo de 2010).
Está dividido en 6 capítulos que se corresponden con los contenidos del título. El libro tiene una orientación práctica; se exponen los contenidos teóricos seguidos de ejemplos y actividades diseñadas para facilitar la comprensión de los mismos. Se parte de los conocimientos previos que el alumno ha adquirido en el primer curso en los módulos profesionales de Bases de datos, Programación (Java), Lenguajes de marcas y sistemas de gestión de información y Entornos de desarrollo.
En el primer capítulo se trata el manejo de ficheros (de bytes, de texto, aleatorios y XML) utilizando el lenguaje JAVA. En el segundo se estudian los protocolos ODBC y JDBC para acceso a bases de datos SQL. Se utilizarán conectores para acceder a diferentes bases de datos SQL (SQLite, Apache Derby, HSQLDB, H2, MySQL, Oracle,.) y orientados a objetos (Db4o). Se realiza una introducción en el patrón de diseño Modelo-Vista-Controlador (MVC) y su uso para el acceso a bases de datos. En el tercer capítulo se utilizará Hibernate como herramientas de mapeo Objeto-Relacional (ORM) para acceder a Oracle y MySQL.
En el cuarto capítulo se utilizará el lenguaje PL/SQL en Oracle y JAVA en NeoDatis para acceder a los objetos almacenados en la base de datos. En el capítulo quinto se utilizará eXist como base de datos nativa XML; se realizarán consultas a documentos y colecciones XML utilizando los lenguajes XPath y XQuery y APIs de JAVA. En el capítulo seis se estudiarán los JavaBeans y se desarrollarán componentes para acceder a bases de datos. 1.1 INTRODUCCIÓN UNIDAD 2 MANEJO DE CONECTORES 2.1 INTRODUCCIÓN UNIDAD 3 HERRAMIENTAS DE MAPEO OBJETO-RELACIONAL (ORM) 3.1 INTRODUCCIÓN UNIDAD 4 BASES DE DATOS OBJETO-RELACIONALES Y ORIENTADAS A OBJETOS 4.1 INTRODUCCIÓN UNIDAD 5 BASES DE DATOS XML 5.1 BASES DE DATOS NATIVAS XML UNIDAD 6 PROGRAMACIÓN DE COMPONENTES DE ACCESO A DATOS 6.1 INTRODUCCIÓN
1.2 CLASES ASOCIADAS A LAS OPERACIONES DE GESTIÓN DE FICHEROS
1.3 FLUJOS O STREAMS. TIPOS
1.3.1 Flujos de bytes (Byte streams)
1.3.2 Flujos de caracteres (Character streams)
1.4 FORMAS DE ACCESO A UN FICHERO
1.5 OPERACIONES SOBRE FICHEROS
1.5.1 Operaciones sobre ficheros secuenciales
1.5.2 Operaciones sobre ficheros aleatorios
1.6 CLASES PARA GESTIÓN DE FLUJOS DE DATOS DESDE/HACIA FICHEROS
1.6.1 Ficheros de texto
1.6.2 Ficheros binarios
1.6.3 Ficheros de acceso aleatorio
1.7 TRABAJO CON FICHEROS XML
1.7.1 Acceso a ficheros XML con DOM
1.7.2 Acceso a ficheros XML con SAX
1.7.3 Serialización de objetos a XML
1.7.4 Conversión de ficheros XML a otro formato
1.8 EXCEPCIONES: DETECCIÓN Y TRATAMIENTO
1.8.1 Capturar excepciones
1.8.2 Especificar excepciones
1.9 EJERCICIOS
2.2 EL DESFASE OBJETO-RELACIONAL
2.3 BASES DE DATOS EMBEBIDAS
2.3.1 SQLite
2.3.2 Apache Derby
2.3.3 HSQLDB
2.3.4 H2
2.3.5 Db4o
2.3.6 Otras
2.4 PROTOCOLOS DE ACCESO A BASES DE DATOS
2.5 ACCESO A DATOS MEDIANTE ODBC
2.6 ACCESO A DATOS MEDIANTE JDBC
2.6.1 Arquitecturas JDBC
2.6.2 Tipos de drivers
2.6.3 Cómo funciona JDBC
2.6.4 Acceso a datos mediante el Puente JDBC-ODBC
2.7 ESTABLECIMIENTO DE CONEXIONES
2.8 EJECUCIÓN DE SENTENCIAS DE DESCRIPCIÓN DE DATOS
2.8.1 ResultSetMetaData
2.9 EJECUCIÓN DE SENTENCIAS DE MANIPULACIÓN DE DATOS
2.9.1 Sentencias preparadas
2.10 EJECUCIÓN DE PROCEDIMIENTOS
2.11 GESTIÓN DE ERRORES
2.12 PATRÓN MODELO-VISTA-CONTROLADOR. ACCESO A DATOS
2.13 EJERCICIOS
3.2 CONCEPTO DE MAPEO OBJETO-RELACIONAL
3.3 HERRAMIENTAS ORM. CARACTERÍSTICAS
3.4 ARQUITECTURA HIBERNATE
3.5 INSTALACIÓN Y CONFIGURACIÓN DE HIBERNATE
3.5.1 Instalación del plugin
3.5.2 Configuración del driver MySQL
3.5.3 Configuración de Hibernate
3.5.4 Generar las clases de la base de datos
3.5.5 Primera consulta en HQL
3.5.6 Empezando a programar con Hibernate en Eclipse
3.6 ESTRUCTURA DE LOS FICHEROS DE MAPEO
3.7 CLASES PERSISTENTES
3.8 SESIONES Y OBJETOS HIBERNATE
3.8.1 Transacciones
3.8.2 Estados de un Objeto Hibernate
3.8.3 Carga de Objetos
3.8.4 Almacenamiento, modificación y borrado de objetos
3.9 CONSULTAS
3.9.1 Parámetros en las consultas
3.9.2 Consultas sobre clases no asociadas
3.9.3 Funciones de grupo en las consultas
3.9.4 Objetos devueltos por las consultas
3.10 INSERT, UPDATE y DELETE
3.11 RESUMEN DEL LENGUAJE HQL
3.11.1 Asociaciones y uniones (joins)
3.12 EJEMPLOS RESUELTOS
3.13 EJERCICIOS
4.2 BASES DE DATOS OBJETO-RELACIONALES
4.2.1 Características
4.2.2 Tipos de objetos
4.2.3 Tablas de objetos
4.2.4 Tipos colección
4.2.5 Referencias
4.2.6 Herencia de tipos
4.2.7 Ejemplo de modelo relacional y objeto-relacional
4.3 BASES DE DATOS ORIENTADAS A OBJETOS
4.3.1 Características de las bases de datos OO
4.3.2 El estándar ODMG
4.3.3 El lenguaje de consultas OQL
4.4 EJEMPLO DE BDOO
4.4.1 Consultas sencillas
4.4.2 Consultas más complejas
4.4.3 Modo cliente/servidor de la BD
4.5 EJERCICIOS
5.2 BASE DE DATOS EXIST
5.2.1 Instalación de eXist
5.2.2 Primeros pasos con eXist
5.2.3 El cliente de administración de eXist
5.3 LENGUAJES DE CONSULTAS XPATH Y XQUERY
5.3.1. Expresiones XPath
5.3.2 Nodos atributos XPath
5.3.3 Axis XPath
5.3.4 Consultas XQuery
5.3.5 Operadores y funciones más comunes en XQuery
5.3.6 Consultas complejas con XQuery
5.4 ACCESO A EXIST DESDE JAVA
5.4.1 La API XML:DB para bases de datos XML
5.4.2 La API XQJ (XQUERY)
5.4.3 Tratamiento de excepciones
5.5. EJERCICIOS
6.2 CONCEPTO DE COMPONENTE
6.2.1 Características
6.2.2 Ventajas e inconvenientes
6.3 JAVABEANS
6.3.1 Propiedades y atributos
6.3.2 Eventos
6.3.3 Persistencia del componente
6.4 HERRAMIENTAS PARA EL DESARROLLO DEL COMPONENTE
6.4.1 Crear JavaBeans con NetBeans
6.5 EMPAQUETADO DE COMPONENTES
6.6 USANDO JAVABEANS PARA ACCEDER A BASES DE DATOS
6.6.1 Usando un componente para acceder a una BDOO
6.6.2 Uso de un componente para acceder a bases de datos SQL
6.7 EJERCICIOS