J2EE: Strus2 + log4j + AJAX (II)




En el post anterior se mostró los distintos frameworks utilizados para desarrollar un proyecto Web Java, el cual puede ser descargado desde el Grupo de Google (archivo: MVCStruts2.rar).





A continuación explicaré la arquitectura del proyecto y cual es la función de cada un de los componentes de éste.
En esta imagen podemos ver el diseño arquitectónico del sistema.

Esta imagen muestra cómo es la división arquitectónica de la aplicación, muestra claramente cómo se aplica el patrón MVC. Además da a conocer el flujo y la forma en que se comunican los distintos componentes que participan en el sistema.

A continuación se definirán los distintos tipos de clases que constituyen el sistema:

HTML y JSP: Básicamente son las páginas Web que muestran gráficamente el sistema al usuario. Los usuarios al ejecutar funciones sobre las páginas Web (capa vista) generan eventos, los cuales son capturados por el Controlador.

Controlador: Es el intermediario entre la capa Vista y la capa Modelo, obtiene los eventos realizados por el usuario en la capa Vista y ejecuta la acción (ActionClases) correspondiente en el Modelo, la cual responderá a la solicitud realizada por el cliente. El controlador está constituido por los archivos de configuración XML (struts.xml) que son interpretados por el framwork Struts2.

InterceptorClases: Son clases que heredan de la interfaz Interceptor que proporciona el framework Struts2. Su función es interceptar las invocaciones que realiza la capa vista sobre el controlador para invocar a las ActionClases (y viceversa), durante ésta interrupción éstas clases pueden realizar validaciones (ejemplo: validar sesión de usuario), etc. y si ésta es correcta el flujo o acción se realiza normalmente.

ActionClases: Heredan de la clase ActionSupport proporcionada por el framework Struts2. Su función (en éste proyecto) es validar la integridad de los datos recibidos e invocar a los diversos Servicios los cuáles le proveerán de la información necesaria para retornar la respuesta requerida por la capa Vista.

Servicios: Son clases de negocio, las cuáles pueden obtener datos a través de la invocación a diversas ClasesDAO, procesarlos y devolver la información solicitada por la capa Web.

ClasesDAO: Estas clases acceden "directamente" a diversos orígenes de datos (Bases de datos, archivos de texto).

ClasesTO: Estas clases proporcionan objetos de transferencia, los cuales "viajaran" a través de la aplicación. Por ejemplo: una clase DAO consultará un origen de datos, y retornará un lista de objetos TO.

ClasesUtil: Son clases utilitarias que proporcionarán funciones que podrán ser utilizadas por todos los componentes del sistema.


4 comentarios:

Daniel dijo...

Hola Eugenio, como estas,excelente todo el materia de ayuda que has dado en este foro, ahora queria saber cuando podras hacer este mismo ejemplo con base de datos. Me interesa mucho saber sobre el tema....
Muchas gracias por tu tiempo y sigue ayudando y haciendo crecer al mundo de la informatica...
Gracias.

egacl dijo...

@Daniel, Hola! Muchas gracias por tu comentario.
Con respecto a subir un ejemplo con conexión a base de datos, ya tengo hecho un proyecto, el cual dentro de unos días subiré con su correspondiente explicación ;-).

Saludos.-

Daniel dijo...

Gracias, por tu pronta respuesta Eugenio.

PAUL dijo...

hola que daniel con respecto al archivo MVCSTRUTS2 no se encuentra lo podrias subir de nuevo me parecio interesante tu post gracis de antemano

Publicar un comentario

top