Durante el tiempo que trabajes a traves del material presentado en el tutorial, podras ver como encajan diversas partes de Spring Framework dentro de una aplicacion web Spring MVC, como Inversion de Control (Inversion of Control - IoC), Programacion Orientada a Aspectos (Aspect- Oriented Programming - AOP), asi como las diversas librerias de.
ACTUALIZACIÓN (ENERO 2019)
SE AGREGARON LAS PRIMERAS LECCIONES PARA DESARROLLAR RESTFUL WEB SERVICES CON SPRING BOOT.
ACTUALIZACION (DICIEMBRE 2018)
SE AGREGARON LECCIONES DONDE SE EXPLICA COMO ENCRIPTAR CONTRASEÑAS CON SPRING SECURITY UTILIZANDO EL ALGORITMO BCRYPT.
ACTUALIZACION (OCTUBRE 2018)
SE ACTUALIZO TODO EL CODIGO FUENTE DE LOS PROYECTOS DESARROLLADOS CON LA VERSION SPRING 5.1.
ACTUALIZACION (MAYO 2018)
SE AGREGARON NUEVAS LECCIONES DONDE SE EXPLICA COMO CONFIGURAR SPRING SECURITY PARA LEER LOS DATOS DE LOS USUARIOS Y ROLES DE UNA BASE DE DATOS MYSQL.
ACTUALIZACION (DICIEMBRE 2017)
SE ACABA DE AGREGAR AL CURSO LECCIONES EN DONDE APRENDERÁS A PUBLICAR TUS APLICACIONES WEB EN INTERNET EN UN SERVIDOR LINUX UBUNTU SERVER 16.04 LTS CON TU PROPIO DOMINIO QUE VAS A COMPRAR EN GODADDY. ¡ EN NINGÚN OTRO CURSO DE SPRING APRENDERÁS ESTO!
¿ESTA ACTUALIZADO EL CURSO?
Este curso esta desarrollado con SPRING FRAMEWORK 5.0.0.RELEASE (SEPTIEMBRE 2017). El framework de Spring es un proyecto en constante evolución. Por esta razón el instructor se compromete a TESTEAR TODO EL CÓDIGO FUENTE DESARROLLADO DURANTE EL CURSO CON LAS NUEVAS VERSIONES DE SPRING 5 (RELEASE). En el caso de que alguna lección requiera ser actualizada, el video será actualizado para que funcione con la nueva versión de Spring 5 RELEASE.
INTRODUCCIÓN
En este curso vas aprender a desarrollar aplicaciones web profesionales y seguras utilizando el framework más popular de Java Spring MVC. Para el desarrollo de la capa de datos de tus aplicaciones 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 MVC y Hibernate y te ayudará a encontrar un empleo fácilmente o mejorar tu trabajo 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.
EL PROYECTO FINAL
A lo largo del curso vamos a desarrollar una APLICACIÓN WEB REAL COMPLETAMENTE FUNCIONAL. Esta aplicación no es la típica aplicación donde solo te enseñan ha realizar el CRUD de una tabla de contactos. En la vida real nunca te van a pedir que desarrolles una aplicación asi de fácil. Por esta razón he decido aplicar todos los conceptos que veremos a lo largo de curso en el desarrollo de una aplicación más compleja. Durante el desarrollo de esta aplicación veremos muchas técnicas y funcionalidades que si te ayudarán en un proyecto real en tu trabajo.
¿Qué proyecto desarrollaremos?
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 esta aplicación esta muy completa, por lo tanto vas a aprender muchas técnicas y conocimientos que podrás aplicar para tus propios proyectos. A continuación te explicaré de forma general algunas de las técnicas y conocimientos que dominarás una vez que hayas desarrollado esta aplicación a lo largo del curso.
HABILIDADES Y CONOCIMIENTOS QUE APRENDERÁS A LO LARGO DEL CURSO
- Aplicar una arquitectura de 3 capas (presentación, negocio, persistencia) en tus aplicaciones web.
- Desarrollar la capa de presentación con Spring MVC. Para esto utilizaremos clases JavaBeans como componentes de Modelo, archivos JSP para la Vista y finalmente los Controladores.
- 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. La ventaja de utilizar INTERFACES es que en un futuro será muy fácil ACTUALIZAR la capa de servicio con otro tipo de tecnologías, es decir solo tendrás que realizar una nueva implementación de estas interfaces y el resto de tu aplicación donde utilizas estas clases de servicio quedará intacta.
- Desarrollar la capa de persistencia utilizando Spring Data JPA.
- Aplicar seguridad a tus aplicaciones web con Spring Security.
- Configurar Spring Security para leer los datos de los usuarios y roles de MySQL.
- Utilizar el IDE Spring Tool Suite (STS) para desarrollar aplicaciones basadas en Spring.
- Comprender la arquitectura de Spring MVC.
- Comprender el ciclo de vida de las peticiones HTTP en Spring MVC.
- Configurar una aplicación web con Spring MVC (DispatcherServlet, WebApplicationContext, Root ApplicationContext).
- Configurar recursos estáticos en Spring MVC (css, javascript, images).
- Utilizar JSTL y Expression Language (EL) en las vistas (JSPs) para facilitar el despliegue de las clases de modelo.
- Entender el Data Binding en Spring MVC.
- Utilizar los TAGs de Spring (Form Tag Library) para facilitar el manejo de formularios HTML.
- Subir archivos (upload) al servidor con Spring MVC.
- Aplicar seguridad a las aplicaciones web utilizando la implementación de JDBCRealm (seguridad basada en usuarios y roles) de Apache Tomcat.
- Integrar una plantilla HTML basada en Bootstrap para el diseño del proyecto final.
- y muchas técnicas más...
- Curso dirigido a estudiantes, profesionales o programadores en general que quieren aplicar Java para desarrollar aplicaciones web con Spring Framework.