
What is it about
Enfoque: Spring moderno, cloud-native, reactivo, listo para Kubernetes y producción. Aprende a desarrollar microservicios cloud-native modernos con Spring Boot 4, Spring Cloud y las últimas tecnologías del ecosistema Spring.
What will you learn?
In this workshop you will learn to develop modern cloud-native microservices with Spring Boot 4, Spring Cloud and the latest technologies in the Spring ecosystem. Practical approach focusing on modern Spring, cloud-native, reactive, ready for Kubernetes and production.
Technology Stack
- Spring Boot 4
- Java 21 / 22
- Spring Web / WebFlux
- Spring Data JPA + R2DBC
- Spring Security 6+
- Spring Cloud (Config, Gateway, Resilience4j)
- Testcontainers
- Micrometer + OpenTelemetry
- GraalVM Native Image
- Docker + Kubernetes
Main Modules
- Introduction to cloud-native microservices development with Spring Boot (1 hour)
- What does cloud-native mean today?
- Spring evolution → Boot 3 → Boot 4
- Monolith vs microservices
- Traditional JVM vs Native Image
- Spring Boot vs Quarkus (honest comparison)
- Workshop architecture
- Hands-on: Create project with spring init, basic structure, first REST endpoint
- External configuration and profiles (Spring Config) (1 hour)
- application.yml and profiles
- Environment variables
- Environment-based configuration
- @ConfigurationProperties
- Spring Cloud Config (concepts)
- Hands-on: Configuration for dev, test, prod, override via ENV / Kubernetes ConfigMap
- REST API development with Spring (2 hours)
- Spring MVC vs WebFlux
- @RestController
- Validations (@Valid)
- Error handling (@ControllerAdvice)
- OpenAPI / Swagger
- Hands-on: REST CRUD, request validation, automatic documentation
- Persistence with Spring Boot (2 hours)
- Spring Data JPA
- Hibernate 6
- Entity mapping
- Transactions
- Introduction to R2DBC (reactive)
- Hands-on: CRUD with JPA, query methods, pagination
- 🔥 Native applications with Spring Boot and GraalVM (2 hours)
- What is GraalVM Native Image
- AOT in Spring Boot 4
- JVM vs Native differences
- Real limitations
- Hands-on: Compile native app, compare startup time and memory usage, Docker + Native Image
- This module is KEY to differentiate your workshop
- Testing in microservices with Spring (2 hours)
- Testing in Spring Boot
- @SpringBootTest
- MockMvc / WebTestClient
- Testcontainers
- Real integration tests
- Hands-on: REST test, test with real database (Testcontainers), test in pipeline
- Reactive and asynchronous microservices (2 hours)
- Reactive programming
- Project Reactor (Mono, Flux)
- WebFlux
- R2DBC
- Backpressure
- Hands-on: Reactive endpoint, non-blocking DB access, MVC vs WebFlux comparison
- Microservices security with Spring Security (2 hours)
- Modern Spring Security (no XML)
- JWT
- OAuth2 / OpenID Connect
- Integration with Keycloak / Auth0
- Hands-on: Protect endpoints, roles and scopes, stateless security
- Microservices implementation in Kubernetes (2 hours)
- Spring Boot containerization
- Liveness / Readiness probes
- ConfigMaps and Secrets
- Deployment on Kubernetes
- Hands-on: Docker build, deploy on K8s, access via Service
- Fault tolerance in microservices (2 hours)
- Resilience4j
- Circuit Breaker
- Retry
- Rate Limiter
- Timeouts
- Hands-on: Simulate failures, activate circuit breaker, resilience metrics
- Observability and monitoring with Spring (2 hours)
- Micrometer
- Prometheus
- OpenTelemetry
- Distributed tracing
- Structured logs
- Hands-on: Metrics, traces, basic dashboards
🔥 EXTRA Modules (Optional)
- Integration with Angular (2 hours)
- Consuming Spring API from Angular
- CORS
- JWT from frontend
- Frontend–backend architecture
- Integration with React (2 hours)
- Fetch / Axios
- Auth handling
- SPA + microservices
- Best practices
Duration
Base duration: 18-22 hours
With extra modules: Up to 26 hours
Requirements
- Basic Java knowledge
- Previous Spring Boot experience (recommended)
- Basic Docker knowledge (desirable)
- Motivation to learn
- Stable internet access