Struts Framework en JAVA

Introducción

Hasta la fecha, se han lanzado dos versiones del marco Struts para uso general. Este tipo de marco se utiliza principalmente para crear aplicaciones MVC (Model View Controller). Casi todas las aplicaciones MVC basadas en la web utilizan este marco como elemento básico durante el desarrollo. Fue fundado por Craig McClanahan en 200 y luego patentado por Apache Foundation, que lanzó Struts 1.0 en 2001.

¿Qué es el marco web de Struts?

Struts es un marco basado en web de código abierto para crear aplicaciones empresariales JAVA de última generación. El framework extiende muchas de sus funcionalidades desde el API de servlet y sigue una arquitectura general Modelo – Vista – Controlador. Las aplicaciones así creadas utilizando el framework Struts son fácilmente mantenibles y flexibles a la hora de realizar cambios en la estructura o interfaz. Algunas de las tecnologías estándar en las que se basa este marco son páginas JSP, JavaBeans, paquetes de recursos y XML.

Arquitectura MVC

Como Struts sigue las reglas básicas Arquitectura MVC, los tres componentes básicos de los puntales son modelo, vista y controlador. Por lo tanto, se vuelve muy imperativo comprender el funcionamiento de MVC para controlar Struts. MVC es un patrón de diseño de software común que se usa ampliamente para aplicaciones de todo tipo. No hace falta decir que hay tres partes en su arquitectura.

  • Modelo – El modelo es el nivel más bajo de la arquitectura que es el principal responsable del manejo de datos. El modelo se pone en contacto directo con el controlador y atiende las solicitudes de consulta. El modelo finalmente envía una respuesta a View conforme al Controller.
  • Normativa – Este es el primer nivel de la arquitectura que maneja directamente las entradas del usuario en forma de eventos. El controlador también tiene la tarea de autenticar la entrada antes de pasarla a Model para desarrollar una respuesta.
  • Ver – La capa Vista se encuentra entre las capas Modelo y Controlador. Como sugiere el nombre, esta capa se ocupa de presentar los datos de manera organizada. La forma en que se presentarán los datos la decide el Controlador y se transmite a View. Generalmente son sistemas de plantillas basados ​​en scripts.

Arquitectura de puntales

Struts es un marco pull-MVC. La única diferencia con la arquitectura MVC convencional es que la acción asume un papel activo en el modelo en lugar de su posición habitual en el controlador. A continuación se analizan los diversos componentes de la arquitectura y dónde se ubican en la estructura MVC.

  • Como se mencionó anteriormente, el componente Acción actúa aquí como modelo.
  • El controlador tiene dos componentes, a saber, el filtro del despachador y los interceptores.
  • Ver tecnologías utilizadas como JSP, Marcador libre, etc. Ver interactúa con el navegador con la ayuda de Value Stack/OGNL y envía resultados al evento.

Solicitud de ciclo de vida (flujo de trabajo en el marco de Struts)

  1. Una vez que se ha realizado una solicitud, se envía directamente al controlador. El Despacho de Filtro del Controlador decide una acción favorable y envía al modelo.
  2. La acción elegida se realiza en Modelo según el tipo de solicitud y el diagnóstico realizado por el Despacho de filtro.
  3. Los interceptores se utilizan para posprocesar la solicitud.
  4. Finalmente, la Vista prepara un resultado que se muestra al usuario.

Ejemplo

/*Estaremos creando una aplicación simple usando el framework Struts. La aplicación es la de un registro de estudiantes al que solo puede acceder el personal. Los maestros pueden obtener las calificaciones de los estudiantes ingresando el apellido y editar si es necesario*/ //Para el propósito de este ejemplo, solo documentaremos la clase .java y la clase struts.xml. Estudiante de clase pública { roll int privado; cadena privada apellido; grado doble privado; public int getRoll() { return roll; } public String getName(){ return lastName; } public double getGrade() { return grade; } public void setGrade(doble nota) { this.grade = grade; } public String execute() { devuelve "éxito"; } } //puntales.xml  bienvenido.jsp

 

Déjame tu comentario

Este sitio usa Akismet para reducir el correo no deseado. Descubra cómo se procesan los datos de sus comentarios.