Elige tu idioma
Curso de Java con Spring Boot
Más de 2 millones de estudiantes en todo el mundo

Curso de Java con Spring Boot

Dominá Java y Spring Boot de cero y construí aplicaciones listas para producción que los empleadores realmente quieren. Este curso te lleva desde los fundamentos esenciales de Java hasta APIs REST, persistencia en bases de datos, seguridad, testing y despliegue con Docker. Cada concepto se basa en prácticas de ingeniería del mundo real que se usan en equipos de desarrollo profesionales.

Dedika para empresas

Lo que vas a aprender:

Vas a arrancar con los fundamentos de Java, incluyendo OOP, colecciones y las funcionalidades modernas de Java; después vas a pasar a la configuración de proyectos Spring Boot, inyección de dependencias y arquitectura de aplicaciones. De ahí, vas a diseñar y construir APIs RESTful con validación adecuada, manejo de errores y documentación con OpenAPI. Vas a persistir datos usando Spring Data JPA, proteger tus APIs con Spring Security y JWT, y escribir pruebas unitarias y de integración con JUnit 5 y Mockito. Por último, vas a contenedorizar tu aplicación con Docker y configurar 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 capacitar 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.

Haz clic aquí

Contenido del curso

8 Capítulos • 39 ClasesDuración entre 4 y 360 horas (tú decides)

Capítulo 1Ver detalles

Fundamentos de Java para Spring Boot

  • Clase 1 • Manejo de Excepciones y Depuración

    Cubre excepciones verificadas y no verificadas, try-catch-finally y excepciones personalizadas. El manejo robusto de errores es crítico para construir APIs Spring Boot confiables.

  • Clase 2 • Características Modernas de Java

    Introduce lambdas, streams, Optional y records desde Java 8 hasta Java 17. Spring Boot aprovecha estas características extensivamente en su auto-configuración y capas de datos.

  • Clase 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.

  • Clase 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.

  • Clase 5 • Principios de Programación Orientada a Objetos

    Enseña encapsulamiento, herencia, polimorfismo y abstracción usando clases Java. Estos pilares de POO sustentan el diseño de cada componente y bean de Spring.

Capítulo 2Ver detalles

Configuración y Estructura de Proyectos Spring Boot

  • Clase 1 • Auto-Configuración de Spring Boot

    Explica cómo Spring Boot auto-configura beans basándose en las dependencias del classpath. Entender este mecanismo previene configuraciones incorrectas y ayuda en la resolución de problemas.

  • Clase 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 habilita la auto-configuración y el escaneo de componentes.

  • Clase 3 • Spring Initializr y Herramientas de Construcción

    Generá un proyecto con Spring Initializr y configurá los archivos de construcción Maven o Gradle. Este es el punto de entrada para cada aplicación Spring Boot creada en el curso.

  • Clase 4 • Archivos de Configuración y Perfiles

    Gestioná 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 3Ver detalles

Inyección de Dependencias y Spring Core

  • Clase 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.

  • Clase 2 • Configuración Basada en Java

    Definí beans programáticamente con @Configuration y métodos @Bean. La configuración Java proporciona alternativas con seguridad de tipos y refactorizables a XML o al escaneo de anotaciones.

  • Clase 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 pérdidas de memoria y errores de concurrencia.

  • Clase 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 entender cada componente de Spring.

  • Clase 5 • Patrones de Inyección de Dependencias

    Compara la inyección por constructor, setter y campo con recomendaciones de buenas prácticas. Elegir el estilo de inyección correcto mejora la testabilidad y la claridad del código.

Capítulo 4Ver detalles

Construcción de APIs RESTful con Spring MVC

  • Clase 1 • Documentación de API con OpenAPI

    Generá 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.

  • Clase 2 • Manejo de Solicitudes en Spring MVC

    Mapea solicitudes HTTP a métodos del controlador usando @RequestMapping y sus atajos. Esta sección establece el ciclo solicitud-respuesta central para todas las APIs REST.

  • Clase 3 • Buenas Prácticas de Diseño de APIs 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.

  • Clase 4 • Validación de Entrada y Respuestas de Error

    Validá los cuerpos de las solicitudes con anotaciones de Bean Validation y manejá errores globalmente. Las respuestas de error consistentes mejoran la usabilidad de la API y la integración del cliente.

  • Clase 5 • Cuerpos de Solicitud y Respuesta

    Serializá y deserializá JSON usando @RequestBody, @ResponseBody y Jackson. El manejo correcto de los cuerpos asegura la interoperabilidad con cualquier cliente REST.

Capítulo 5Ver detalles

Persistencia de Datos con Spring Data JPA

  • Clase 1 • Migraciones de Base de Datos con Flyway

    Gestioná la evolución del esquema usando scripts de migración versionados de Flyway. Las migraciones automatizadas aseguran un estado de base de datos coherente en todos los entornos.

  • Clase 2 • Repositorios de Spring Data

    Usá JpaRepository y CrudRepository para generar métodos de acceso a datos automáticamente. La abstracción del repositorio elimina el código boilerplate de los DAO.

  • Clase 3 • Relaciones entre Entidades

    Modelá asociaciones uno a uno, uno a muchos y muchos a muchos con opciones de cascada y fetch. El mapeo correcto de relaciones previene problemas de integridad de datos y consultas N+1.

  • Clase 4 • Gestión de Transacciones

    Controlá 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.

  • Clase 5 • Entidades JPA y Mapeo

    Mapeá clases Java a tablas de base de datos usando anotaciones JPA. El diseño correcto de entidades es la base de una capa de datos confiable y con buen rendimiento.

Capítulo 6Ver detalles

Seguridad con Spring Security

  • Clase 1 • Autorización y Control de Acceso Basado en Roles

    Restringí el acceso a los endpoints usando @PreAuthorize, @Secured y reglas de seguridad HTTP. La autorización detallada refuerza el principio de privilegio mínimo.

  • Clase 2 • Autenticación Sin Estado Basada en JWT

    Implementá la emisión, validación y refresco de tokens usando JSON Web Tokens. JWT permite una autenticación escalable y sin estado para APIs REST.

  • Clase 3 • Configuración de Autenticación de Usuarios

    Configurá 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 base para cualquier aplicación en producción.

  • Clase 4 • CORS, CSRF y Encabezados de Seguridad

    Configurá el intercambio de recursos de origen cruzado, la protección CSRF y los encabezados de seguridad HTTP. Estas configuraciones defienden contra vulnerabilidades web comunes en clientes basados en navegador.

  • Clase 5 • Fundamentos de Spring Security

    Explicá la cadena de filtros de seguridad, el administrador de autenticación y el contexto de seguridad. Esta arquitectura sustenta cada característica de seguridad agregada en secciones posteriores.

Capítulo 7Ver detalles

Pruebas de Aplicaciones Spring Boot

  • Clase 1 • Pruebas de Slice de Controladores con MockMvc

    Probá controladores REST de forma aislada usando @WebMvcTest y MockMvc. Las pruebas de slice validan el mapeo de solicitudes, la validación y el manejo de errores sin un contexto completo.

  • Clase 2 • Pruebas Unitarias con JUnit 5 y Mockito

    Probá clases individuales de forma aislada usando aserciones de JUnit 5 y mocks de Mockito. Las pruebas unitarias aisladas se ejecutan rápido y señalan defectos en el origen.

  • Clase 3 • Pruebas de Slice de Repositorios con DataJpaTest

    Validá consultas JPA y métodos de repositorio usando una base de datos en memoria. Las pruebas de la capa de datos confirman la generación correcta de SQL y el mapeo de entidades.

  • Clase 4 • Pruebas de Beans y Servicios de Spring

    Cargá un contexto parcial de Spring con @ExtendWith(SpringExtension) y @MockBean. Las pruebas de la capa de servicio verifican la lógica de negocio con cableado real de Spring.

  • Clase 5 • Pruebas de Integración y de Extremo a Extremo

    Ejecutá 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 slice pasan por alto.

Capítulo 8Ver detalles

Despliegue y Preparación para Producción

  • Clase 1 • Contenerización con Docker

    Creá imágenes Docker optimizadas usando JARs en capas y construcciones multi-etapa. Los contenedores estandarizan el entorno de ejecución y simplifican la orquestación.

  • Clase 2 • Registro Estructurado y Trazabilidad Distribuida

    Configurá Logback para registros JSON estructurados y agrega IDs de traza con Micrometer Tracing. Los registros y trazas correlacionados aceleran el análisis de causa raíz en sistemas distribuidos.

  • Clase 3 • Empaquetado y Ejecución de la Aplicación

    Construí JARs y WARs ejecutables y configurá las opciones de inicio de la JVM. El empaquetado correcto asegura que la aplicación se ejecute de manera idéntica en todos los objetivos de despliegue.

  • Clase 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 bajo carga de producción.

  • Clase 5 • Observabilidad con Spring Boot Actuator

    Expone endpoints de salud, métricas e información a través de Spring Boot Actuator. Los endpoints de observabilidad son la base para el monitoreo y las alertas en producción.

Certificación

Tu certificado válido de finalización

Este curso es para ti:

  • Desarrollador junior: querés ir más allá de los tutoriales y meterte en trabajo de ingeniería de backend real.

  • Cambio de trayectoria profesional: pasar de un campo no técnico al desarrollo de software de forma profesional.

  • Egresado de Ciencias de la Computación: tiene teoría académica pero le falta experiencia práctica en proyectos con Spring Boot.

  • Desarrollador frontend: listo para expandir sus habilidades y dominar el stack completo de la aplicación.

  • Programador aficionado: desarrollás proyectos personales y apuntás a una calidad de código profesional.

  • Ingeniero de QA: buscás un conocimiento más profundo de desarrollo para avanzar hacia un rol de programación.

Lo que dicen nuestros estudiantes

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 por todo lo que hacen, ya los he recomendado a otras personas...
Giulio Carlo
Giulio CarloEstudiante de Marketing Digital
Me gusta cómo las lecciones van directo al grano y cómo puedo cambiar capítulos y saltar contenidos que no necesito.
Mariana Ferres
Mariana FerresEstudiante de Fotografía
Me gusta el contenido y la forma de presentación y transcripción de videos, ¡lo que acelera el proceso!
Luciana Alvarenga
Luciana AlvarengaEstudiante de Diseño de Uñas
La plataforma es rápida, simple de usar. La diversidad de contenido y los videos complementarios ayudan mucho en el aprendizaje.
André Felipe
André FelipeEstudiante de Ingeniería de Prompt

Principales capacitaciones

Preguntas Frecuentes

¿Quién es Dedika?

¿El certificado es válido en Chile?

¿Los cursos son gratuitos?

¿Cuál es la carga horaria 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 costo o precio de los cursos?

¿Qué es un curso EAD u online y cómo funciona?

Curso en PDF