Este repositorio contiene el código y ejemplos desarrollados para el Bootcamp de Backend con Java y Spring de Código Facilito.
El objetivo es aprender a construir APIs modernas con Spring Boot, aplicando GraphQL, Spring AOP, Spring Boot Actuator, y prácticas recomendadas para el desarrollo backend en Java.
- Diferencias entre REST y GraphQL
- Definición de esquemas (
.graphqls) - Queries, Mutations y Subscriptions
- Creación de resolvers en Spring Boot
- Hands-on: API GraphQL con entidad
Movie(consultas, mutaciones y actualizaciones de películas)
- Introducción a Spring Boot Actuator
- Endpoints comunes (
/actuator/health,/actuator/metrics,/actuator/info) - Integración con Prometheus y Grafana
- Logs, métricas y health checks
- Conceptos clave: Aspectos, Pointcuts, Advices, Join Points
- Diferencias y complementariedad entre OOP y AOP
- Casos de uso: logging, seguridad, transacciones, caching
- Implementación con
spring-boot-starter-aop
- Ejemplos de queries y mutations para GraphiQL
- Referencias y links oficiales
springboot-graphql/
├── src/
│ ├── main/java/...
│ │ ├── controllers/ # Controladores y resolvers
│ │ ├── models/ # Modelos de dominio (Movie, Author, etc.)
│ │ ├── services/ # Lógica de negocio
│ │ └── aspects/ # Ejemplos de AOP
│ └── resources/
│ ├── application.properties
│ └── graphql/ # Esquemas .graphqls
├── pom.xml
├── README.md
└── .gitignore
- Java 17+
- Maven 3.8+
-
Clonar el repositorio
git clone https://github.com/tatianaborda/springboot-graphql.git cd springboot-graphql -
Ejecutar la aplicación
./mvnw spring-boot:run
-
Probar GraphQL
- Accede a GraphiQL (si está habilitado): http://localhost:8080/graphiql
Ejemplo de query:
query { getAllMovies { id title director releaseYear } }
Con este proyecto aprenderás a:
- ✅ Integrar GraphQL en aplicaciones Spring Boot
- ✅ Monitorear y exponer métricas con Spring Boot Actuator
- ✅ Aplicar AOP (Aspect Oriented Programming) para logging, seguridad y transacciones
- ✅ Construir APIs modernas, escalables y mantenibles con Java + Spring
Creado por Tatiana Borda para Código Facilito
- GitHub: @tatianaborda
- LinkedIn: Tatiana Borda
- YouTube: Alien Explorer
Este proyecto es de uso educativo y está disponible bajo licencia MIT.
⭐ Si este repositorio te ayudó a aprender Spring Boot y GraphQL, te invito a dejarme una estrella