Este proyecto es una aplicación JavaFX con Spring Boot que implementa un sistema de gestión de usuarios y grupos. Es un proyecto para el curso de Analisis y Diseño.
- Spring Boot 3.2.12 - Framework de aplicación
- Java 17 - Lenguaje de programación
- JavaFX 21.0.2 - Framework de interfaz gráfica
- Spring Data JPA - Persistencia de datos
- H2 Database - Base de datos en memoria
- Maven - Gestión de dependencias
- JUnit 5 - Framework de pruebas
- TestFX - Pruebas de interfaz gráfica
- Java 17 o superior (JDK 17+)
- Maven 3.6+
java -versionAsegúrate de tener Java 17 o superior instalado.
git clone <url-del-repositorio>
cd AnalysisYDisenomvn clean compilemvn javafx:runO alternativamente:
mvn spring-boot:runsrc/
├── main/
│ ├── java/mx/uam/ayd/proyecto/
│ │ ├── datos/ # Capa de datos (Repositorios)
│ │ ├── negocio/ # Capa de negocio (Servicios y Modelos)
│ │ ├── presentacion/ # Capa de presentación (JavaFX)
│ │ └── ProyectoApplication.java
│ └── resources/
│ └── application.yml # Configuración de la aplicación
└── test/
├── java/ # Pruebas unitarias e integración
└── resources/
└── application-test.properties
- Agregar Usuario: Crear nuevos usuarios en el sistema
- Listar Usuarios: Ver todos los usuarios registrados
- Listar Grupos: Ver todos los grupos disponibles
# Ejecutar todas las pruebas
mvn test
# Ejecutar pruebas con cobertura
mvn jacoco:reportLa aplicación utiliza H2 Database en memoria por defecto. La consola H2 está habilitada en:
- URL: http://localhost:8080/h2-console
- JDBC URL: jdbc:h2:mem:testdb
- Usuario: sa
- Contraseña: (vacía)
Este proyecto ha sido migrado de Spring Boot 2.7.3 a 3.2.12. Los principales cambios incluyen:
- Actualización de Spring Boot: 2.7.3 → 3.2.12
- Actualización de Java: 11 → 17
- Actualización de JavaFX: 17.0.2 → 21.0.2
- Migración de JPA:
javax.persistence→jakarta.persistence - Actualización de dependencias de prueba
- Mejor rendimiento y estabilidad
- Soporte para características modernas de Java
- Mejoras de seguridad
- Soporte extendido hasta 2025
- Crear el modelo en
negocio/modelo/ - Crear el repositorio en
datos/ - Crear el servicio en
negocio/ - Crear la interfaz en
presentacion/ - Agregar pruebas en
test/
Este proyecto es parte del curso de Análisis y Diseño de Software.
Contactar a Humberto Cervantes de la UAM Iztapalapa en hcm@xanum.uam.mx