Download Índice completo - Ra-Ma

Document related concepts
no text concepts found
Transcript
Índice
INTRODUCCIÓN .......................................................................................................................................................9
CAPÍTULO 1. MANEJO DE FICHEROS..............................................................................................................11
1.1 Formas de acceso a un fichero. Clases asociadas...................................................................12
1.2 GestiÓn de flujos de datos..................................................................................................................13
1.2.1Clase FileWriter........................................................................................................................................14
1.2.2Clase FileReader.......................................................................................................................................15
1.2.3Clase FileOutpuStream............................................................................................................................15
1.2.4Clase FileInputStream..............................................................................................................................15
1.2.5RandomAccessFile....................................................................................................................................15
1.2.6Ejemplo de uso de flujos............................................................................................................................16
1.3Trabajo con ficheros XML (eXtended Markup Language)....................................................17
1.4Acceso a datos con DOM (Document Object Model) . ..............................................................18
1.4.1DOM y Java...............................................................................................................................................21
1.4.2Abrir DOM desde Java..............................................................................................................................23
1.4.3Recorrer un árbol DOM.............................................................................................................................24
1.4.4Modificar y serializar................................................................................................................................26
1.5Acceso a datos con SAX (Simple API for XML) ...............................................................................28
1.5.1Abrir XML con SAX desde Java................................................................................................................30
1.5.2Recorrer XML con SAX.............................................................................................................................31
1.6Acceso a datos con JAXB (binding).....................................................................................................34
1.6.1 ¿Cómo crear clases Java de esquemas XML?...........................................................................................36
1.6.2Abrir XML con JAXB.................................................................................................................................37
1.6.3Recorrer un XML desde JAXB..................................................................................................................38
1.7 Procesamiento de XML: XPath (Xml Path Language).................................................................40
1.7.1Lo básico de XPath.....................................................................................................................................40
1.7.2 XPath desde Java......................................................................................................................................42
1.8Conclusiones y propuestas para ampliar....................................................................................43
RESUMEN DEL CAPÍTULO......................................................................................................................................44
ejercicios propuesTOS.....................................................................................................................................44
TEST DE CONOCIMIENTOS....................................................................................................................................45
CAPÍTULO 2. MANEJO DE CONECTORES.......................................................................................................47
2.1El desfase objeto-relacional............................................................................................................48
2.2 Protocolos de acceso a bases de datos: Conectores............................................................49
2.2.1Componentes JDBC..................................................................................................................................50
2.2.2Tipos de conectores JDBC.........................................................................................................................51
2.2.3Modelos de acceso a bases de datos...........................................................................................................52
2.2.4Acceso a bases de datos mediante un conector JDBC..............................................................................53
5
Acceso a Datos
© RA-MA
2.2.5Clases básicas del API JDBC....................................................................................................................58
2.2.6Clases adicionales del API JDBC..............................................................................................................59
2.3Ejecución de sentencias de definición de datos....................................................................60
2.4Ejecución de sentencias de manipulación de datos.............................................................61
2.5Ejecución de consultas.........................................................................................................................62
2.5.1Clase Statement........................................................................................................................................62
2.5.2Clase PreparedStatement.........................................................................................................................63
2.5.3Clase CallableStatement..........................................................................................................................64
2.6 Gestión de transacciones....................................................................................................................64
2.7Conclusiones y propuestas para ampliar....................................................................................66
RESUMEN DEL CAPÍTULO......................................................................................................................................66
ejercicios propuesTOS.....................................................................................................................................67
TEST DE CONOCIMIENTOS....................................................................................................................................67
CAPÍTULO 3. BASES DE DATOS OBJETO-RELACIONALES Y ORIENTADAS A OBJETOS.................69
3.1Características de las bases de datos orientadas a objetos..........................................71
3.1.1ODMG (Object Data Management Group)...............................................................................................73
3.1.2El modelo de datos ODMG........................................................................................................................73
3.1.3ODL (lenguaje de definición de objetos)...................................................................................................74
3.1.4OML (lenguaje de manipulación de objetos)............................................................................................76
3.1.5OQL (lenguaje de consultas de objetos)....................................................................................................77
3.2Sistemas gestores de bases de datos orientadas a objetoS.............................................79
3.2.1Instalación de Matisse..............................................................................................................................80
3.2.2Creando un esquema con Matisse ...........................................................................................................81
3.3 interfaz de programación de aplicaciones de la base de datos.....................................85
3.3.1 Preparando el código Java.........................................................................................................................85
3.3.2Añadiendo objetos.....................................................................................................................................88
3.3.3Eliminando objetos....................................................................................................................................90
3.3.4Modificando objetos...................................................................................................................................92
3.3.5Consultando objetos con OQL...................................................................................................................94
3.4Características de las bases de datos Objeto-relacionales...........................................98
3.4.1 Gestión de objetos con SQL: ANSI SQL 1999...........................................................................................99
3.5Conclusiones y propuestas para ampliar..................................................................................102
RESUMEN DEL CAPÍTULO....................................................................................................................................104
ejercicios propuesTOS...................................................................................................................................104
TEST DE CONOCIMIENTOS..................................................................................................................................105
CAPÍTULO 4. HERRAMIENTAS DE MAPEO OBJETO-RELACIONAL.....................................................107
4.1Concepto de mapeo objeto-relacional (Object-Relational Mapping [ORM])...........108
4.2Características de las herramientas ORM. Herramientas ORM más utilizadas...109
4.3Instalación y configuración de una herramienta ORM.....................................................110
4.3.1Instalación manual.................................................................................................................................110
4.3.2Usar Netbeans con j2EE.........................................................................................................................112
4.4Estructura de ficheros de hibernate. Mapeo y Clases Persistentes........................112
4.4.1Clases Java para representar los objetos (POJO)..................................................................................112
4.4.2 Fichero de mapeo ”.hbm.xml”..................................................................................................................113
6
© RA-MA
índice
4.4.3Crear ficheros de mapeo con NetBeans..................................................................................................114
4.5Sesiones. Objeto para crearlas.......................................................................................................118
4.6Carga, almacenamiento y modificación de objetos.............................................................118
4.6.1 Guardar...................................................................................................................................................119
4.6.2Leer..........................................................................................................................................................120
4.6.3Actualizar................................................................................................................................................120
4.6.4Borrar.......................................................................................................................................................121
4.7Consultas HQL (Hibernate Query Language)............................................................................122
4.7.1Ejecutar HQL desde Java.......................................................................................................................123
4.8Conclusiones y propuestas para ampliar..................................................................................124
RESUMEN DEL CAPÍTULO....................................................................................................................................125
ejercicios propuesTOS...................................................................................................................................125
TEST DE CONOCIMIENTOS..................................................................................................................................126
CAPÍTULO 5. BASES DE DATOS XML..............................................................................................................127
5.1Bases de datos nativas XML. Comparativa con bases de datos relacionales..........128
5.1.1Documentos centrados en datos y en contenido.....................................................................................130
5.1.2 ¿Alternativas para almacenar XML?.....................................................................................................130
5.1.3Comparativa con los sistemas gestores relacionales.............................................................................132
5.2Estrategias de almacenamiento....................................................................................................134
5.2.1Colecciones y documentos.......................................................................................................................136
5.3LibrerÍas de Acceso a datos XML .....................................................................................................138
5.3.1Contexto en el que se usan las API.........................................................................................................140
5.4Establecimiento y cierre de conexiones...................................................................................142
5.4.1Conexión con XML:DB............................................................................................................................142
5.4.2Conexión con XQJ....................................................................................................................................144
5.5Creación y borrado de Recursos; clases y métodos............................................................145
5.5.1Accediendo a recursos con XML:DB.......................................................................................................145
5.5.2Creando recursos con XML:DB...............................................................................................................147
5.5.3Borrando recursos con XML:DB.............................................................................................................148
5.6Creación y borrado de Colecciones: clases y métodos.....................................................149
5.6.1Creación de colecciones con XML:DB.....................................................................................................149
5.6.2Borrando colecciones con XML:DB.........................................................................................................150
5.7Modificación de contenidos XML....................................................................................................151
5.7.1Introducción a XQuery Update Extension.............................................................................................152
5.7.2Modificación de datos con XML:DB y XQuery Update Extension.........................................................156
5.7.3Introducción a XUpdate..........................................................................................................................158
5.7.4Modificación de datos con XML:DB y XQuery Update Extension.........................................................163
5.8Realización de consultas: clases y métodos...........................................................................164
5.8.1Lenguaje de consulta para XML: XQuery (XML Query Language)......................................................164
5.8.2Ejecutar consultas XQuery con XML:DB...............................................................................................170
5.8.3Ejecutar consultas XQuery con XQJ......................................................................................................172
5.9Tratamiento de excepciones.............................................................................................................173
5.10 conclusiones y propuesta para ampliar....................................................................................175
7
Acceso a Datos
© RA-MA
RESUMEN DEL CAPÍTULO....................................................................................................................................175
ejercicios propuesTOS...................................................................................................................................176
TEST DE CONOCIMIENTOS..................................................................................................................................176
CAPÍTULO 6. PROGRAMACIÓN DE COMPONENTES DE ACCESO A DATOS.......................................179
6.1Concepto de componente: Características..............................................................................180
6.2 Propiedades................................................................................................................................................181
6.2.1Simples e indexadas................................................................................................................................181
6.2.2Compartidas y restringidas....................................................................................................................182
6.3Atributos.....................................................................................................................................................182
6.4Eventos: asociación de acciones a eventos..............................................................................182
6.5Introspección. Reflexión...................................................................................................................183
6.6 Persistencia del componente..........................................................................................................183
6.7Herramientas para desarrollo de componentes no visuales.......................................185
6.8Empaquetado de componentes.........................................................................................................185
6.9Tipos de EJB..................................................................................................................................................186
6.10Ejemplo de EJB con NetBeans............................................................................................................187
6.11 conclusiones y propuesta para ampliar....................................................................................191
RESUMEN DEL CAPÍTULO....................................................................................................................................192
ejercicios propuesTOS...................................................................................................................................192
TEST DE CONOCIMIENTOS..................................................................................................................................193
material adicional.......................................................................................................................................195
índice alfabético..........................................................................................................................................197
8