Instrucciones:
Implementa los siguientes ejercicios en Java utilizando Hibernate, MongoDB y eXistDB. Se valorará la correcta ejecución, eficiencia y estructura del código. Usa buenas prácticas en la programación y manejo de excepciones.
Contexto
La Junta de Castilla y León administra una base de datos de alojamientos rurales en la región, gestionando información en distintos sistemas:
- Base de datos MySQL: alojamientosRuralesDB.
- Base de datos MongoDB: TurismoMySQL, con una colección Turismo que almacena alojamientos en formato JSON.
- Base de datos documental ExistDB: Para almacenamiento estructurado en XML.
Configuraciones previas
- Ejecuta en MySQL Workbench el script turismo.sql para crear y poblar la base de datos alojamientosRuralesDB.
- Crea en MongoDB la base de datos TurismoMySQL y la colección Turismo, importando los datos JSON proporcionados.
- Configura un proyecto Maven con Hibernate y las dependencias necesarias para MySQL, MongoDB y ExistDB.
Ejercicio 1: Migración de datos de MongoDB a MySQL
Método: migrarDatosAlojamientoTurismoRural()
Descripción: Se deben extraer los datos de la colección Turismo en MongoDB y almacenarlos en alojamientosRuralesDB en MySQL, únicamente si el campo establecimiento es «Alojamiento Turismo Rural».
Requisitos:
- Usar Hibernate para insertar datos en MySQL.
- Implementar una consulta eficiente en MongoDB.
- Añadir logs para depurar el proceso.
Ejemplo de datos en MongoDB:
{
"nombre": "La Posada del Bosque",
"tipo": "Casa Rural de Alquiler",
"ubicacion": {
"provincia": "Zamora",
"direccion": "Calle Principal 22"
},
"telefono": "980654321",
"establecimiento": "Alojamiento Turismo Rural"
}
Ejercicio 2: Generación de documentos XML en ExistDB
Método: crearRecursoHosteleria()
Descripción: Se deben generar documentos XML en ExistDB, uno por cada provincia, a partir de la información en alojamientosRuralesDB.
Formato esperado:
<provincia nombre="Segovia">
<alojamiento tipo="Casa rural de Alquiler" num.establecimientos="250"/>
</provincia>
Requisitos:
- Obtener datos de MySQL y transformarlos en XML.
- Guardar cada XML en ExistDB con el nombre provincia.xml (ejemplo:
Segovia.xml
). - Validar los datos antes de su inserción.
Ejercicio 3: Conversión de datos Excel a XML
Método: crearDocumentoExcel()
Descripción: A partir del archivo Excel alojamientosCyL.xlsx, se debe generar un documento XML alojamientosCyL.xml utilizando JAXB.
Estructura esperada del XML:
<establecimientos>
<tipo denominacion="Casa Rural de Alquiler">
<casos provincia="Soria">320</casos>
</tipo>
</establecimientos>
Requisitos:
- Leer el archivo Excel con Apache POI.
- Transformar y escribir datos en XML con JAXB.
- Manejar excepciones adecuadamente.
Criterios de Evaluación
Criterio | Puntos |
---|---|
Configuración del proyecto Maven | 0,50 |
Ejercicio 1: Migración de datos MongoDB -> MySQL | 3,25 |
Ejercicio 2: Creación de recursos XML en ExistDB | 3,25 |
Ejercicio 3: Generación de documento XML desde Excel | 3,00 |
Nota:
- Se penalizarán errores en la ejecución o ausencia de validaciones.
- Se valorará la modularidad y reutilización del código.
- Implementa mensajes de depuración y logs para facilitar la verificación del proceso.
