Spring Boot 3. Aplicaciones web y REST APIs con Spring MVC

  • Overview
  • Curriculum
  • Instructor
  • Review

About This Course

Aprende desarrollo web con Spring Boot 3, Spring Framework, Spring Data JPA y MySQL (actualizado con Spring Boot 3.3.4)

ACTUALIZACIÓN DE CONTENIDO/CODIGO FUENTE (OCTUBRE 2024)

SE HA ACTUALIZADO TODO EL CONTENIDO, CODIGO FUENTE DE LOS PROYECTOS DESARROLLADOS Y LOS VIDEOS PARA TRABAJAR CON LA VERSION DE SPRING BOOT 3.3.4

ACTUALIZACIÓN DE VERSIONES

TODO EL CÓDIGO FUENTE Y LA DOCUMENTACIÓN DEL CURSO HAN SIDO PROBADAS CON LAS SIGUIENTES VERSIONES (OCTUBRE 2024):


  • JDK 21 LTS

  • Spring Boot 3.3.4

  • Spring Framework 6.1.13

  • Spring Data JPA 3.3.4

  • Spring Security 6.3.3

  • MySQL 8.0.36

  • Deployment en Ubuntu 24.04 LTS

ACTUALIZACIÓN DE CONTENIDO

Se agregó nuevo contenido al curso (21 nuevas lecciones). El deployment de aplicaciones Spring Boot en un servidor Linux es uno de los contenidos mas solicitados por los alumnos y por tal motivo se agregó una nueva sección donde el alumno aprenderá a configurar un servidor Linux en la nube con el sistema operativo Ubuntu Server 20.04 LTS y además dejará instalada la aplicación de empleos lista para ser usada desde Internet.


ALUMNOS SATISFECHOS DE ESTE CURSO:

Guillermo Ivan Tabera Bazan

El curso es muy completo, yo no sabía nada de spring, gracias a que está bien explicado, le dedique tiempo y mucha práctica aprendi sin dolor.

En mi caso logré obtener un empleo para desarrollar en spring con mejores ingresos.

Danielo De León

Excelente curso, y excelente profesor, todo muy bien explicado, los videos muy didácticos tanto desde el punto de vista práctico como teórico, las clases se me hicieron muy amenas y en todo momento a lo largo del curso me sentí muy motivado para continuar hasta finalizarlo.

En la parte de spring boot, si bien ya tenía algunos conocimientos me sirvió tanto para reforzar como para aprender cosas nuevas y la parte de spring mvc con xml se me hizo muy amigable comparado con otro curso que había hecho hace un tiempo en que me parecía todo muy complicado y tedioso.

Muchas gracias por el curso, y un fuerte abrazo desde Uruguay!!

Alex Leiva

Debo decir que este curso supero mis expectativas, secciones bien organizadas y el profesor contribuyo con su profesionalidad a que siguiera avanzando cada lección del curso. Había tomado unos tutoriales anteriormente de spring pero me parecía muy complejo y termine frustrado. Ahora comprendí el flujo que usa el framework y como funciona, estoy muy feliz, nada mas que decir, gracias Profesor Ivan :).

Carlos Alberto Pérez Vallés

Es un curso muy completo y muy bien explicado por parte del profesor.

El ejemplo de la aplicación del cine, a lo largo de los capítulos, ayuda muchísimo a comprender los conceptos fundamentales de spring y las necesidades que se pueden presentar en un proyecto real.

Se explican muchísimos detalles a nivel de Spring, Servlet API, Tomcat, Linux. Incluso a nivel de VPS para publicar la aplicación y que esté accesible en Internet.

Mi más sincera enhorabuena al profesor, por su forma de explicar los temas y su disponibilidad a resolver todas las dudas. Muchas gracias.

Jonathan Robles

Excelente Curso

A travez de los años he trabajado en Java SE y he utilizando algunos de los frameworks mas utilizados de spring, struts y demas, puedo decir que este es sin duda el mejor curso que he llevado en relacion a spring mvc, jpa.

Estoy mas que satisfecho con la parte de spring security asi como poder publicar la pagina web en un servidor de aplicaciones real.

El profesor muestra conocimiento de los temas ademas de que realmente resuelve las dudas que se van generando.

Arturo Ramirez Camino

Excelente curso, muy bien estructurado y ha cumplido todas mis expectativas hasta el punto de haber desarrollado sin problemas una aplicación paralela a la explicada por el profesor. Lo recomiendo sin duda.

Faiber Juanias

Estoy muy interesado también en aprender más de Linux, y este curso me dio también lo necesario para publicar mis aplicaciones creadas con Spring MVC. Definitivamente excelente curso, y muchas gracias!

Marcos

Buenas, muy buen curso, se entiende todo a la perfección.

Método de aprendizaje excelente, aplicando todos los conocimientos sobre un mismo proyecto, el cual al final del curso será una aplicación completamente funcional. De esta forma se entiende todo mucho mejor y se tiene una visión clara de la utilidad de cada cosa.

Muchas gracias por el curso !

Un saludo desde España

Ignacio Jimenez Barco

Curso muy completo y maravillosamente bien explicado. Impecable pedagogía y conocimientos los del formador, pues se nota el cuidado que poner en explicar y dejar bien claros los conceptos.

El enfoque práctico, lo hacen aún más atractivo y cómodo para afianzar y comprender la materia.

Además la velocidad de respuesta es muy alta, prácticamente en el día, lo cual es de agradecer.

En resumen: un curso muy recomendable para tener contacto con Spring.

Arturo Castro

Es mi primer curso en Udemy y por el precio que he pagado por este contenido supera mis expectativas, contenido muy abundante con nuevas tecnologías

Jonny Lozano

El curso es muy bueno, el profesor tiene basta experiencia en el tema, ha actualizado el curso con contenido que ni siquiera estaba planeado y además lo que no se ve en el curso, en las respuestas que da en las preguntas de los usuarios, hay información que aunque no aplica al curso, aún así responde y dan aún más conocimiento.

Pablo Arcones

Muy buen curso para iniciarse y aprender en profundidad el desarrollo de aplicaciones web con spring. Aprendes de todo, tanto a nivel teorico como práctico. Supera las espectativas que tenia con creces!!

David Ruiz

Excelente, muy didáctico, recomendado a todos aquellos profesionales que se estén iniciando en el maravilloso mundo de Spring Framework

Leo Bollini

Excelente curso para empezar de 0, todo el tiempo desde q estoy veo que el instructor actualiza el material, y la vez que tuve que consultarlo no solo atendió la consulta, sino que ademas la resolvió y me explico el motivo en el cual fallaba en el mismo día de la consulta.

Alvaro Bayon

Excelente curso. El instructor es muy didáctico, los contenidos están actualizados. Los videos son breves y claros. Es fácil aprender Spring con este curso.

INTRODUCCIÓN

En este curso vas aprender a desarrollar Aplicaciones Web Profesionales y RestFul Web Services utilizando el framework más popular de Java Spring Boot 2. Aprenderás a usar Spring MVC para la funcionalidad de tu Aplicación Web, para el desarrollo de la capa de datos aprenderás a utilizar el módulo Spring Data JPA. Te enseñaré a integrar el framework más popular de persistencia de datos Hibernate para implementar el API de JPA. Finalmente, aprenderás Spring Security para implementar la seguridad de tus aplicaciones web.

BENEFICIOS DE TOMAR ESTE CURSO

Al terminar este curso tendrás en tu Curriculm Vitae el manejo de Spring Framework 5 & Spring Boot 2 y te ayudará a encontrar un empleo fácilmente o mejorar tu posición actual. Casi para cualquier trabajo relacionado con desarrollo web con Java, es necesario tener estas habilidades. Este curso te ayudará a aprender estas dos tecnologías de una forma muy rápida porque vamos a desarrollar un proyecto real para aplicar todos los conceptos que veremos a lo largo del curso. 

HABILIDADES Y CONOCIMIENTOS QUE APRENDERÁS A LO LARGO DEL CURSO

Spring Boot

  1. Crear proyectos Spring Boot con Spring Initializr & Spring Tools 4.

  2. Desarrollar Aplicaciones Web con Spring Boot.

  3. Desarrollar RestFul Web Services con Spring Boot.

  4. Conocer la estructura de un proyecto Spring Boot.

  5. Configurar parámetros de Spring Boot.

Spring MVC

  1. Comprender la arquitectura de Spring MVC.

  2. Comprender el ciclo de vida de las peticiones HTTP en Spring MVC.

  3. Aplicar Spring MVC en aplicaciones web. Para esto utilizaremos clases JavaBeans como componentes de Modelo, Thymeleaf para la Vista y finalmente los Controladores.

  4. Aplicar una arquitectura de 3 capas (presentación, negocio, persistencia) en tus aplicaciones web.

  5. Desarrollar la capa de negocio con clases de servicio y la anotación @Service. Aprenderás a diseñar tus clases de servicio con INTERFACES para que tus clases de servicio tengan bajo aclopamiento y sean fáciles de mantener.

  6. Comprender la Inyección de Dependencias (@Autowired).

  7. Crear controladores con @Controller.

  8. Manejo de Peticiones HTTP GET & HTTP POST: @RequestMapping, @GetMapping, @PostMapping.

  9. Definir URI dinámicas con @PathVariable.

  10. Comprender el Data Binding entre clases de modelo y formularios HTML.

  11. Recibir datos de formularios HTML con @RequestParam.

  12. Subida de archivos al servidor (Upload Files).

  13. Integrar las vistas con Thymeleaf.

  14. Manejo de errores en formularios HTML (BindingResult).

  15. Declarar redirecciones y definir Redirect Attributes.

  16. Formularios HTML de búsqueda.


Thymeleaf

  1. Integrar Thymeleaf en proyectos Spring Boot para las vistas.

  2. Iteraciones con th:each.

  3. Condicionales th:if, th:unless, Elvis Operator (?:)

  4. Configuración de recursos estáticos (Javascript, CSS, Images).

  5. Integración del framework Front-End Bootstrap.

  6. Integración de plantillas HTML.

  7. Thymeleaf Page Layouts & Fragments.


Spring Data JPA

  1. Integrar Spring Data JPA con Spring Boot.

  2. Configurar el Datasource de conexión a MySQL 5.7 & 8.0

  3. Configuración de clases Entity (@Entity, @Table, @Id, @Column).

  4. Configuración de Relaciones (@OneToOne @OneToMany, @ManyToOne).

  5. Definición de Repositorios con las interfaces (@CrudRepository, @JpaRepository).

  6. Declaración de Query Methods con @Query.

  7. Creación de consultas Query By Example (QBE).

  8. Desarrollar la capa de persistencia utilizando Spring Data JPA.

  9. Inyectar los repositorios en las clases de servicio (@Autowired).

Spring Security

  1. Integrar Spring Security con Spring Boot.

  2. Configurar Spring Security para leer los datos de los usuarios y roles de MySQL.

  3. Definir seguridad por patrones de URLs.

  4. Aplicar seguridad a tus aplicaciones web con Spring Security.

  5. Desarrollar un formulario de Login personalizado.

RestFul Web Services

  1. Crear controladores con @RestController.

  2. Anotación @ResponseBody

  3. Anotación @RequestBody.

  4. Manejo del cliente REST Postman.

A LO LARGO DE ESTE CURSO VAS A DESARROLLAR 2 APLICACIONES WEB REALES QUE TE SERVIRÁN COMO BASE PARA TUS PROPIOS PROYECTOS.


PROYECTO 1 (EmpleosApp)
¿Cual es la funcionalidad de la aplicación EmpleosApp?

El proyecto que vamos a desarrollar es una aplicación web para publicar ofertas de trabajo en Internet. Esta aplicación esta estructurada en dos secciones principales:

  • Front-End: Esta es la parte pública de la aplicación y estará abierta al público en general. En la página principal se mostrarán las ofertas de trabajo mas destacadas que han sido publicadas por un administrador. En la página principal también se encuentrá un formulario para buscar ofertas de trabajo por Descripción y por Categorías. Al hacer clic en una oferta de trabajo se mostrarán los detalles de esta vacante. Estos detalles son por ejemplo: fecha de publicación, salario ofrecido, detalles de la vacante (requisitos, requerimientos, prestaciones ofrecidas, datos de contacto, etc. En la página de los detalles de una vacante existirá un botón para que el usuario, siempre y cuando haya iniciado sesión pueda enviar si Curriculm Vitae para aplicar para la Vacante. Finalmente, en la página principal de la aplicación también existirá un botón para que los usuarios puedan registrarse en la aplicación.

  • Back-End: Esta es la parte privada de la aplicación y únicamente tendrán acceso los administradores. En esta sección los administradores podrán administrar la aplicación. Básicamente existirán 3 tipos de usuarios o roles: SUPERVISOR, ADMINISTRADOR y USUARIO. El SUPERVISOR tendrá acceso al catálogo de vacantes, categorías y solicitudes enviadas. El ADMINISTRADOR tendrá acceso al catálogo de vacantes, categorías, solicitudes enviadas y el catálogo de usuarios registrados. El USUARIO solo tendra permisos para Aplicar (enviar Curriculum Vitae) para una determinada Vacante.

PROYECTO 2 (CineApp)
¿Cual es la funcionalidad de la aplicación CineApp?

El proyecto que vamos a desarrollar es una aplicación web para llevar la administración de un CINEMA. Esta aplicación esta estructurada en dos secciones principales:

  • Front-End: Esta es la parte pública de la aplicación y estará abierta al público en general. En la página principal se mostrará la cartelera de películas que están en exhibición para la fecha actual. En la página principal también se encuentrá un formulario para buscar películas para otras fechas. Al hacer clic en una película se mostrarán los detalles de esta película. Estos detalles son  los horarios (hora, sala, precio) disponibles para la fecha  seleccionada y los datos generales de la película (imagen, título, actores, duracion, género, el video del trailer, la sinopsis, etc). Finalmente, en la página principal de la aplicación también se mostrará un pequeño blog con noticias relacionadas con el cine.

  • Back-End: Esta es la parte privada de la aplicación y únicamente tendrán acceso los administradores. En esta sección los administradores podrán administrar la aplicación. Básicamente existirán dos tipos de administradores o roles: EDITOR y GERENTE. El EDITOR tendrá acceso al catálogo de películas, catálogo de horarios y el catálogo de noticias (BLOG). El GERENTE tendrá los mismos accesos que los editores, pero tendrá acceso también para modificar el banner de la página principal.

Como puedes ver las 2 aplicaciónes están muy completas, por lo tanto vas a aprender muchas técnicas y conocimientos que podrás aplicar para tus propios proyectos.

  • Configurar un servidor Linux en la nube con Ubuntu Server 24.04 LTS, Java 21 y MySQL 8 para hacer el deployment de tus aplicaciones Spring Boot 3

  • Desarrollar aplicaciones web con Spring Boot 3, Thymeleaf, Spring Data JPA (Hibernate & MySQL 8) y Spring Security.

  • Desarrollar aplicaciones web con Spring MVC, JSP, Spring Data JPA (Hibernate & MySQL) y Spring Security.

Course Curriculum

1 Lectures

30 Lectures

1 Lectures

Instructor

Profile photo of IVAN ELISEO TINAJERO DIAZ
IVAN ELISEO TINAJERO DIAZ

Mi nombre es Iván E. Tinajero Díaz, soy Ingeniero de Software y tengo una Maestría en Ingeniería de Software por parte del CIMAT (Centro de Investigación en Matemáticas). Actualmente trabajo en una dependencia Gubernamental desempeñandome en el área de desarrollo de sistemas. Tengo más de 11 años de experiencia desarrollando software, principalmente con el lenguage de programación Java y PHP,...

Review
4.9 course rating
4K ratings
ui-avatar of Nekop Ok
Nekop O.
5.0
7 months ago

Compre el curso hace unos años, tengo mi primer empleo y ahora no deseo nuevas tecnologias, deseo saber viejas tecnologías. Literalmente un buen de proyectos que son "legacies" y muy poca información de esta. Agradezco que haya mantenido la información

  • Helpful
  • Not helpful
ui-avatar of Manuel Berganza
Manuel B.
4.5
8 months ago

Excelente maestro y dinámica del curso, lo mejor es que lo mantiene actualizado

  • Helpful
  • Not helpful
ui-avatar of Luis Muñoz Martin
Luis M. M.
4.0
9 months ago

Positiva hasta el momento

  • Helpful
  • Not helpful
ui-avatar of Alfonso Arroyo Arroyo
Alfonso A. A.
5.0
9 months ago

Bien explicado y buena documentación.

  • Helpful
  • Not helpful
ui-avatar of Saúl Marín Duarte
Saúl M. D.
4.0
9 months ago

Hasta el momento muy bien explicados.

  • Helpful
  • Not helpful
ui-avatar of Herlis Jhoan Ruiz Cordova
Herlis J. R. C.
5.0
10 months ago

me gusta la dinámica

  • Helpful
  • Not helpful
ui-avatar of Wuilmer Avila
Wuilmer A.
5.0
1 year ago

excelente

  • Helpful
  • Not helpful
ui-avatar of Victor Manuel Saavedra Gonzalez
Victor M. S. G.
5.0
1 year ago

solo que fueras mas dinamico

  • Helpful
  • Not helpful
ui-avatar of Andrés Felipe Jaramillo Arenas
Andrés F. J. A.
4.0
1 year ago

Bien explicado, habla bien, no es aburridor. aunque el audio es muy regular.

  • Helpful
  • Not helpful
ui-avatar of ANDERSON JOSE MARIÑO ORTEGA
Anderson J. M. O.
5.0
1 year ago

Explica de una manera muy practica y esto te permite tener una mejor vision de lo que aprendes.

  • Helpful
  • Not helpful
Leave A Reply

Your email address will not be published. Required fields are marked *

Ratings

Courses You May Like

Lorem ipsum dolor sit amet elit
Show More Courses