La aplicación web desarrollada con Spring se centra en la gestión de un sistema educativo, permitiendo manejar diferentes entidades como directores, escuelas, cursos y estudiantes, con funcionalidades específicas para agregar y asociar estos elementos de manera controlada y eficiente.
Funcionalidades principales:
Gestión de Directores:
- Los directores son asignados a una única escuela, lo que garantiza que un director solo pueda ser responsable de una escuela en particular. Esta restricción asegura una estructura clara y organizada dentro de la institución educativa.
Gestión de Escuelas:
- La aplicación permite agregar nuevas escuelas, asignando a cada una de ellas un director único. Los directores son los encargados de gestionar las operaciones dentro de su respectiva escuela.
Gestión de Cursos:
- Los cursos pueden ser creados dentro de las escuelas, y cada curso está asociado a una escuela específica. Esto permite tener un control detallado de qué cursos están disponibles en cada escuela y quiénes son los responsables de estos cursos.
Gestión de Estudiantes:
- Los estudiantes pueden ser agregados al sistema y apuntados a cursos específicos. Sin embargo, la aplicación impone restricciones para garantizar que:
- Un estudiante no pueda estar inscrito en dos escuelas diferentes.
- Un estudiante no pueda apuntarse más de una vez al mismo curso, evitando duplicidades y asegurando una gestión eficiente de las matrículas.
Asignación de Estudiantes a Cursos:
- Los estudiantes pueden ser apuntados a los cursos correspondientes. Al igual que en otros aspectos, la aplicación verifica que un estudiante no pueda estar inscrito en el mismo curso más de una vez, lo que ayuda a evitar errores y mantiene la coherencia en el sistema.
Interfaz y Validación:
- La aplicación proporciona formularios para la creación y actualización de directores, escuelas, cursos y estudiantes. Utilizando Spring MVC y JSTL, la interfaz es dinámica y permite agregar o actualizar la información de manera sencilla.
- Se implementan validaciones para evitar que un estudiante se inscriba en varias escuelas o en el mismo curso más de una vez, brindando una experiencia de usuario segura y controlada.
Estilo y Diseño:
- El diseño de la aplicación está orientado a la simplicidad y eficiencia, utilizando una hoja de estilos CSS externa para proporcionar una apariencia limpia y profesional.
