Jakarta Struts
Keywords: Jakarta Struts, Apache Software Foundation, Base de datos, Entidad XML, HTML, J2EE, JSP, Modelo Vista Controlador, Patrones de diseño
Struts es una herramienta de soporte para el desarrollo de aplicaciones Web bajo el patrón MVC bajo la plataforma J2EE (Java 2, Enterprise Edition). Struts se desarrolla como parte del proyecto Jakarta de la Apache Software Foundation.
Struts permite reducir el tiempo de desarrollo, su carácter de "software libre" y su compatibilidad con todas las plataformas en donde Java Entreprise está disponible, lo convierte en una herramienta altamente disponible.
| Tabla de contenidos |
Funcionamiento de Struts
Struts se basa en el patrón del Modelo Vista Controlador (MVC) el cual se utiliza ampliamente y es considerado de gran solidez. De acuerdo con este modelo, el procesamiento se separa en tres secciones diferenciadas, llamadas el modelo, las vistas y el controlador:
Componentes del modelo
Corresponden a la lógica del negocio con el cual se comunica la aplicación web. Usualmente el modelo comprende accesos a Bases de Datos o sistemas que funcionan independientemente de la aplicación web.
Las vistas
Las vistas son la parte de la aplicación encargada de presentar información a los usuarios y recopilar datos provistos en plantillas. Las vistas corresponden generalmente a páginas dinámicas generadas por archivos JSP.
Los componentes para plantillas (llamadas forms en HTML) se utilizan para intercambiar información entre las vistas y las acciones.
Struts viene con una gran variedad de entidades, que extienden la funcionalidad de las páginas JSP, agregándoles diferentes operaciones.
Componentes del control
Los componentes de control son los encargados de coordinar las actividades de la aplicación, que van desde la recepción de datos del usuario, las verificaciones de forma y la selección de un componente del modelo a ser llamado. Por su parte los componentes del modelo envían al control sus eventuales resultados y/o errores de manera de poder continuar con otros pasos de la aplicación.
Esta separación simplifica enormemente la escritura tanto de vistas como de componentes del modelo: Las páginas JSP no tienen que incluir manejo de errores, mientras que los elementos del control simplemente deciden sobre el paso siguiente a seguir.
Entre las características de Struts se pueden mencionar:
- Configuración del control centralizada.
- Interrelaciones entre Acciones y página u otras acciones se especifican por tablas XML en lugar de codificarlas en los programas o páginas.
- Componentes de aplicación, que son el mecanismo para compartir información bidireccionalmente entre el usuario de la aplicación y las acciones del modelo.
- Librerías de entidades para facilitar la mayoría de las operaciones que generalmente realizan las páginas JSP.
- Struts contiene herramientas para validación de campos de plantillas. bajo varios esquemas que van desde validaciones locales en la página (en javaScript) hasta las validaciones de fondo hechas a nivel de las acciones.
Struts permite que el desarrollador se concentre en el diseño de aplicaciones complejas como una serie simple de componentes del Modelo y de la vista intercomunicados por un control centralizado. Diseñando de esta manera se debe obtener una aplicación más consistente y más fácil de mantener.
