Este proyecto está en construcción y tiene como objetivo demostrar el uso del patrón MVC (Modelo-Vista-Controlador) en Spring Framework. Actualmente, se están implementando diversas funcionalidades relacionadas con la validación de formularios, internacionalización, integración con Hibernate, y más.
- Spring Framework
- Hibernate ORM
- JSP
- MySQL
- Java 8
El proyecto sigue el patrón de diseño Modelo-Vista-Controlador (MVC), que separa la lógica de negocio, la presentación y el control de flujo de la aplicación. Actualmente, el controlador maneja las rutas y las vistas mediante @RequestMapping
y addAttribute
.
@RequestMapping
: Utilizado tanto en la clase como en los métodos para definir rutas relativas.addAttribute
: Para enviar datos del controlador a la vista.
Se utilizan etiquetas MVC para crear formularios y realizar data binding entre los datos del formulario HTML y los objetos Java. Las etiquetas <form:form>
, <form:input>
, entre otras, facilitan la integración de los datos del usuario en el backend.
Se está utilizando Hibernate Validator para validar los campos del formulario de manera sencilla mediante anotaciones como @NotNull
, @Size
, y más.
BindingResult
: Para manejar errores de validación de forma eficiente.- Validación personalizada: Se están creando validaciones personalizadas con anotaciones para mejorar la seguridad y la flexibilidad.
Se está utilizando Thymeleaf como motor de plantillas para generar vistas dinámicas y seguras. Thymeleaf permite vincular datos del backend con las vistas de una manera limpia y sencilla.
El proyecto incluye la internacionalización de mensajes mediante la clase ResourceBundleMessageSource
, lo que permite personalizar los mensajes de error y otros textos según el idioma del usuario.
Las expresiones regulares se utilizan en la validación de formularios, como en los códigos postales, para asegurar que los datos ingresados cumplan con el formato esperado.
Hibernate se utiliza como framework ORM para mapear objetos Java a tablas de bases de datos y automatizar las operaciones CRUD (Crear, Leer, Actualizar y Eliminar).
Este proyecto aún está en construcción y se seguirán añadiendo nuevas características, tales como:
- CRUD con base de datos SQL.
- Registro de usuarios.
- Aspectos visuales atractivos. entre otras.