Introducción al curso
  • Introducción
  • Antes de comenzar
  • Herramientas necesarias
  • Instalación del Spring Tools Suite IDE
  • Uso del foro para las dudas
  • ¿Cómo realizar preguntas?
  • Recursos de introducción
Spring MVC
  • Creando un proyecto Web con Spring Boot
  • Estructura de una aplicación Spring Boot
  • Creando el controlador y la vista
  • Errores comunes a tener en cuenta
  • Pasar datos a la vista
  • Anotación @RequestMapping sobre el controlador
  • Introducción MVC
  • El objeto Model
  • Directiva if de Thymeleaf
  • Directiva each (foreach) de Thymeleaf
  • Anotación @ModelAttribute
  • Anotacion @RequestParam
  • Obtener varios parámetros de la URL con @RequestParam
  • Anotación @PathVariable
  • Obtener varios parámetros de la ruta con @PathVariable
  • Agregando recursos estáticos y estilos CSS personalizados
  • Inyectar valores usando la anotación @Value
  • Agregando otros archivos properties personalizados para los textos
  • Retornando redirect y forward como respuesta en métodos del controlador
  • Despliegue y ejecución desde terminal (deploy)
  • Recursos de Spring MVC y la Inyección de Dependencia
  • Descargar Código Fuente
Inyección de Dependencias
  • Creando nuevo proyecto y controlador
  • Añadiendo la clase de servicio
  • Implementando inyección de dependencia con la anotación @Autowired
  • Inyectando mediante la interface
  • Introducción al contenedor y la inyección de dependencias
  • Inyección de dependencias vía constructor y métodos setters
  • Anotación @Primary
  • Anotación @Qualifier
  • Registrando componentes usando clase de configuración y la anotación @Bean
  • Ejemplo Factura y relaciones entre sus componentes
  • Registrando componente ItemsFactura
  • Creando el controlador FacturaController y su vista
  • Registrando otras lineas para la factura
  • Ciclo de vida del componente
  • Contextos (Scope) de los componentes
  • Descargar Código Fuente
Formularios Thymeleaf y Data Binding
  • Creando nuevo proyecto form
  • Actualización: para Spring Boot 2.3.0 o superior agregar dependencia validation
  • Añadiendo la vista del formulario
  • Método handler para recibir y procesar los datos enviados
  • Creando la clase model del formulario
  • Mapeando los campos del formulario al objeto model
  • Validación del formulario usando anotaciones
  • Añadiendo los mensajes de errores en la vista del formulario
  • El atributo object de thymeleaf en el elemento form
  • Mostrar valores de atributos del objeto model en el formulario
  • La anotación @SessionAttributes para manter los datos durante el ciclo del form
  • La anotación @Size para rangos y @Email para validar correo electrónico
  • Mensajes de errores personalizados usando properties
  • Archivos properties y acentos con UTF-8
  • Validación personalizada usando anotación @Pattern para expresiones regulares
  • Validación personalizada usando una clase Validation
  • Registrando una clase validador con la anotación @InitBinder
  • Validación personalizada usando anotaciones
  • Validación personalizada usando anotaciones ejemplo requerido
  • Validación de números enteros con @Max @Min y NotNull
  • Validación de fechas con @NotNull y dando formato con @DateTimeFormat
  • Validación de fechas con input type date de HTML5 y @Past y @Future
  • Formateando fechas con @InitBinder y registrando un CustomDateEditor
  • Formateando fechas con @InitBinder y registrando un CustomDateEditor Parte 2
  • Implementando propio filtro custom property editor para convertir a mayúscula
  • Lista select desplegable
  • Formateando fechas en vistas thymeleaf
  • Llenando lista select con Map
  • Llenando lista select con objetos del la clase Pais
  • Añadiendo componente service de Pais
  • Añadiendo componente pais property editor
  • Implementando checkboxes
  • Llenando checkboxes con Map
  • Llenando checkboxes con objetos del tipo Role
  • Añadiendo componente role property editor
  • Checkbox booleano true o false
  • Radio button
  • Input type hidden
  • Poblando pais y roles
  • Redirect después del POST procesar
  • Añadiendo estilos CSS al formulario con Bootstrap
  • Añadiendo estilos CSS Bootstrap a la plantilla resultado
  • Cargando archivo css Bootstrap localmente
  • Descargar Código Fuente
Interceptores HTTP
  • Introduccón a los interceptores Http
  • Implementando interceptor TiempoTranscurrido
  • Registrando interceptor en la configuración de spring
  • Implementando fragment interceptor para reutilizar código en thymeleaf
  • Saliendo del interceptor en peticiones POST http - return en post handle
  • Retornando false en un interceptor