
Curso de Java con Spring Boot
Domina Java y Spring Boot desde cero y crea aplicaciones listas para producción que los empleadores realmente quieran. Este curso te lleva desde los fundamentos básicos de Java hasta las APIs REST, la persistencia en bases de datos, la seguridad, las pruebas y el despliegue con Docker. Cada concepto se basa en prácticas de ingeniería del mundo real utilizadas en equipos de desarrollo profesionales.
Lo que vas a aprender:
Empezarás con los fundamentos de Java, incluyendo OOP, colecciones y las características modernas de Java, para luego pasar a la configuración de proyectos con Spring Boot, la inyección de dependencias y la arquitectura de la aplicación. A partir de ahí, diseñarás y construirás APIs RESTful con validación adecuada, manejo de errores y documentación OpenAPI. Persistirás datos usando Spring Data JPA, protegerás tus APIs con Spring Security y JWT, y escribirás pruebas unitarias y de integración con JUnit 5 y Mockito. Finalmente, containerizarás tu aplicación con Docker y configurarás la observabilidad usando Spring Boot Actuator, Prometheus y Grafana.
Cómo estudias de forma práctica Curso de Java con Spring Boot
Cómo practicas Curso de Java con Spring Boot
Para ti que eres empresa y quieres formar a tu equipo
En Dedika para empresas, el curso incluye ejercicios y ejemplos adaptados a tu propio negocio y a las necesidades de tu empresa.
Contenido del curso
8 Capítulos • 39 LeccionesDuración entre 4 y 360 horas (tú decides)
Capítulo 1OcultarOcultar detallesVer detallesFundamentos de Java para Spring Boot
Fundamentos de Java para Spring Boot
Lección 1 • Manejo de Excepciones y Depuración
Cubre excepciones comprobadas y no comprobadas, try-catch-finally y excepciones personalizadas. Un manejo de errores robusto es fundamental para construir APIs Spring Boot fiables.
Lección 2 • Características Modernas de Java
Introduce lambdas, streams, Optional y records de Java 8 a Java 17. Spring Boot aprovecha estas características ampliamente en su configuración automática y capas de datos.
Lección 3 • Colecciones y Genéricos
Explora List, Set, Map y Queue con parámetros de tipo genérico. El uso correcto de colecciones es esencial para manejar datos en servicios y repositorios Spring.
Lección 4 • Sintaxis de Java y Tipos de Datos
Cubre tipos primitivos, variables, operadores y flujo de control. Establece la base sintáctica necesaria para todo el código Java y Spring posterior.
Lección 5 • Principios de la Programación Orientada a Objetos
Enseña encapsulación, herencia, polimorfismo y abstracción usando clases Java. Estos pilares de la programación orientada a objetos sustentan cada componente y diseño de bean en Spring.
Capítulo 2OcultarOcultar detallesVer detallesConfiguración y Estructura del Proyecto Spring Boot
Configuración y Estructura del Proyecto Spring Boot
Lección 1 • Configuración Automática de Spring Boot
Explica cómo Spring Boot configura beans automáticamente según las dependencias del classpath. Comprender este mecanismo previene configuraciones incorrectas y facilita la resolución de problemas.
Lección 2 • Estructura de la Aplicación y Convenciones
Explica la estructura de paquetes estándar, la clase principal y las convenciones de Spring Boot. Seguir estas convenciones permite la configuración automática y el escaneo de componentes.
Lección 3 • Spring Initializr y Herramientas de Construcción
Genera un proyecto con Spring Initializr y configura archivos de construcción Maven o Gradle. Este es el punto de entrada para cada aplicación Spring Boot creada en el curso.
Lección 4 • Archivos de Configuración y Perfiles
Gestiona la configuración de la aplicación mediante application.properties y application.yml con perfiles de entorno. Los perfiles permiten cambiar sin problemas entre configuraciones de desarrollo, prueba y producción.
Capítulo 3OcultarOcultar detallesVer detallesInyección de Dependencias y Núcleo de Spring
Inyección de Dependencias y Núcleo de Spring
Lección 1 • Anotaciones de Estereotipo y Escaneo de Componentes
Usa @Component, @Service, @Repository y @Controller para registrar beans automáticamente. El uso correcto de anotaciones refuerza los límites arquitectónicos en aplicaciones por capas.
Lección 2 • Configuración Basada en Java
Define beans programáticamente con métodos @Configuration y @Bean. La configuración Java ofrece alternativas seguras en tipos y refactorizables a XML o al escaneo de anotaciones.
Lección 3 • Ámbitos y Ciclo de Vida de los Beans
Cubre los ámbitos singleton, prototype, request y session, además de los callbacks del ciclo de vida. La selección correcta del ámbito previene fugas de memoria y errores de concurrencia.
Lección 4 • Inversión de Control y el Contenedor IoC
Define IoC y explica cómo el ApplicationContext gestiona los beans. Este modelo mental es la base para comprender cada componente de Spring.
Lección 5 • Patrones de Inyección de Dependencias
Compara la inyección por constructor, setter y campo con orientación sobre mejores prácticas. Elegir el estilo de inyección correcto mejora la comprobabilidad y la claridad del código.
Capítulo 4OcultarOcultar detallesVer detallesConstrucción de APIs RESTful con Spring MVC
Construcción de APIs RESTful con Spring MVC
Lección 1 • Documentación de API con OpenAPI
Genera documentación interactiva de API usando SpringDoc y la especificación OpenAPI. La documentación acelera la incorporación y sirve como contrato para los consumidores.
Lección 2 • Manejo de Solicitudes en Spring MVC
Asigna solicitudes HTTP a métodos del controlador usando @RequestMapping y sus atajos. Esta sección establece el ciclo de solicitud-respuesta central para todas las APIs REST.
Lección 3 • Mejores Prácticas de Diseño de API REST
Aplica nomenclatura de recursos RESTful, semántica de métodos HTTP y convenciones de códigos de estado. Las APIs bien diseñadas reducen los errores del cliente y simplifican el versionado.
Lección 4 • Validación de Entrada y Respuestas de Error
Valida los cuerpos de las solicitudes con anotaciones de Bean Validation y maneja errores globalmente. Las respuestas de error coherentes mejoran la usabilidad de la API y la integración del cliente.
Lección 5 • Cuerpos de Solicitud y Respuesta
Serializa y deserializa JSON usando @RequestBody, @ResponseBody y Jackson. El manejo correcto del cuerpo garantiza la interoperabilidad con cualquier cliente REST.
Capítulo 5OcultarOcultar detallesVer detallesPersistencia de Datos con Spring Data JPA
Persistencia de Datos con Spring Data JPA
Lección 1 • Migraciones de Base de Datos con Flyway
Gestiona la evolución del esquema usando scripts de migración versionados de Flyway. Las migraciones automatizadas garantizan un estado de base de datos coherente en todos los entornos.
Lección 2 • Repositorios de Spring Data
Usa JpaRepository y CrudRepository para generar métodos de acceso a datos automáticamente. La abstracción del repositorio elimina el código repetitivo de DAO.
Lección 3 • Relaciones entre Entidades
Modela asociaciones uno a uno, uno a muchos y muchos a muchos con opciones de cascada y fetch. Un mapeo de relaciones correcto previene problemas de integridad de datos y consultas N+1.
Lección 4 • Gestión de Transacciones
Controla la consistencia de datos con @Transactional, propagación y niveles de aislamiento. Los límites de transacción correctos previenen lecturas sucias y actualizaciones parciales.
Lección 5 • Entidades JPA y Mapeo
Mapea clases Java a tablas de base de datos usando anotaciones JPA. Un diseño correcto de entidades es la base de una capa de datos fiable y eficiente.
Capítulo 6OcultarOcultar detallesVer detallesSeguridad con Spring Security
Seguridad con Spring Security
Lección 1 • Autorización y Control de Acceso Basado en Roles
Restringe el acceso a los endpoints usando @PreAuthorize, @Secured y reglas de seguridad HTTP. La autorización detallada aplica el principio de mínimo privilegio.
Lección 2 • Autenticación Sin Estado Basada en JWT
Implementa la emisión, validación y renovación de tokens usando JSON Web Tokens. JWT permite una autenticación escalable y sin estado para las API REST.
Lección 3 • Configuración de Autenticación de Usuarios
Configura almacenes de usuarios en memoria y respaldados por base de datos con codificación de contraseñas. El almacenamiento seguro de credenciales es un requisito básico para cualquier aplicación en producción.
Lección 4 • CORS, CSRF y Cabeceras de Seguridad
Configura el intercambio de recursos de origen cruzado, la protección CSRF y las cabeceras de seguridad HTTP. Estas configuraciones defienden contra vulnerabilidades web comunes en clientes basados en navegador.
Lección 5 • Fundamentos de Spring Security
Explica la cadena de filtros de seguridad, el gestor de autenticación y el contexto de seguridad. Esta arquitectura sustenta cada característica de seguridad añadida en secciones posteriores.
Capítulo 7OcultarOcultar detallesVer detallesPruebas de Aplicaciones Spring Boot
Pruebas de Aplicaciones Spring Boot
Lección 1 • Pruebas de Segmento de Controlador con MockMvc
Prueba controladores REST de forma aislada usando @WebMvcTest y MockMvc. Las pruebas de segmento validan el mapeo de solicitudes, la validación y el manejo de errores sin un contexto completo.
Lección 2 • Pruebas Unitarias con JUnit 5 y Mockito
Prueba clases individuales de forma aislada usando aserciones JUnit 5 y mocks de Mockito. Las pruebas unitarias aisladas se ejecutan rápido y localizan defectos en el origen.
Lección 3 • Pruebas de Segmento de Repositorio con DataJpaTest
Valida consultas JPA y métodos de repositorio usando una base de datos en memoria. Las pruebas de capa de datos confirman la generación correcta de SQL y el mapeo de entidades.
Lección 4 • Prueba de Beans y Servicios de Spring
Carga un contexto parcial de Spring con @ExtendWith(SpringExtension) y @MockBean. Las pruebas de capa de servicio verifican la lógica de negocio con conexión real de Spring.
Lección 5 • Pruebas de Integración y de Extremo a Extremo
Ejecuta pruebas de pila completa contra una base de datos real usando Testcontainers y RestAssured. Las pruebas de integración detectan defectos entre capas que las pruebas unitarias y de segmento pasan por alto.
Capítulo 8OcultarOcultar detallesVer detallesDespliegue y Preparación para Producción
Despliegue y Preparación para Producción
Lección 1 • Contenerización con Docker
Crea imágenes Docker optimizadas usando JAR por capas y construcciones multi-etapa. Los contenedores estandarizan el entorno de ejecución y simplifican la orquestación.
Lección 2 • Registro Estructurado y Trazado Distribuido
Configura Logback para registros JSON estructurados y añade IDs de traza con Micrometer Tracing. Los registros y trazas correlacionados aceleran el análisis de causa raíz en sistemas distribuidos.
Lección 3 • Empaquetado y Ejecución de la Aplicación
Construye JARs y WARs ejecutables y configura las opciones de inicio de la JVM. Un empaquetado correcto garantiza que la aplicación se ejecute de forma idéntica en todos los destinos de despliegue.
Lección 4 • Ajuste de Rendimiento y Caché
Aplica la abstracción de caché de Spring, ajuste del pool de conexiones y procesamiento asíncrono. Estas optimizaciones reducen la latencia y aumentan el rendimiento de transferencia bajo carga de producción.
Lección 5 • Observabilidad con Spring Boot Actuator
Expone endpoints de salud, métricas e información mediante Spring Boot Actuator. Los endpoints de observabilidad son la base para la monitorización y alertas en producción.
Tu certificado válido de finalización
Este curso es para ti:
Desarrollador júnior: quiere ir más allá de los tutoriales para adentrarse en el trabajo real de backend.
Cambio de carrera: transición desde un campo no técnico hacia el desarrollo de software a nivel profesional.
Graduado en Informática: tiene teoría académica, pero carece de experiencia práctica en proyectos con Spring Boot.
Desarrollador frontend: preparado para ampliar competencias y dominar toda la pila de la aplicación.
Programadora o programador aficionado: que construye proyectos personales y aspira a una calidad de código profesional.
Ingeniero de QA: busca un conocimiento más profundo del desarrollo para avanzar hacia un puesto de programación.
Lo que dicen nuestros alumnos
Sus clases son perfectas. Adquirí el paquete de un año y, finalmente, tengo la oportunidad de seguir diversos temas de mi interés sin necesidad de cambiar de plataforma... agradezco todo lo que hacéis, ya os he recomendado a otras personas...

Me gusta cómo las lecciones van directas al grano y cómo puedo cambiar de capítulos y saltar contenidos que no necesito.

Me gusta el contenido y la forma de presentación y transcripción de vídeos, ¡lo que acelera el proceso!

La plataforma es rápida, fácil de usar. La diversidad de contenido y los vídeos complementarios ayudan mucho en el aprendizaje.

Principales capacitaciones
Preguntas frecuentes
¿Quién es Dedika?
¿El certificado es válido en España?
¿Los cursos son gratuitos?
¿Cuál es la carga lectiva del curso?
¿Cómo son los cursos?
¿Cómo funcionan los cursos?
¿Cuál es la duración de los cursos?
¿Cuál es el coste o precio de los cursos?
¿Qué es un curso EAD u online y cómo funciona?
Curso en PDF




















