top 35 frequently asked struts interview questions answers
Este tutorial sobre preguntas de la entrevista de Struts con respuestas explica los conceptos de Struts con ejemplos simples:
Esta serie de preguntas de Struts lo llevará a través de la descripción general completa de Struts Framework, el flujo de una aplicación, la necesidad de Struts, sus acciones, constantes, etc., junto con las entradas utilizadas en Struts. Este artículo cubrirá todas las preguntas importantes que se hacen en cualquier entrevista de Struts.
Nadie le pedirá que escriba código con Strtus2, se desplazará sobre todas las preguntas teóricas y el entrevistador solo quiere saber si el candidato tiene conocimientos básicos sobre el flujo del marco de Struts o no.
Después de pasar por todas estas preguntas a fondo, si puede explicar los conceptos en sus propias palabras con pequeños ejemplos en tiempo real, habrá terminado.
Preguntas más frecuentes de la entrevista de Struts con respuestas
P # 1) ¿Qué es Struts Framework? ¿Cuáles son sus componentes?
Responder: Struts es un tipo de marco de desarrollo de aplicaciones web que proporciona una plataforma adecuada para desarrollar aplicaciones web. Struts incluye Servlets, JSP, etiquetas personalizadas y recursos de mensajes en un marco unificado.
P # 2) ¿Por qué usamos Struts?
Responder: Como Struts se basa en la arquitectura MVC, es decir, modelo, vista, controlador, separa la lógica de negocios, el diseño y el controlador, como resultado de lo cual hace que el código sea más simple, fácil de mantener y legible.
P # 3) ¿Cuáles son las clases importantes de la aplicación Struts?
Respuesta: A continuación se enumeran las clases más importantes de la aplicación Struts.
- Servlet de acción: Es la clase de controlador y maneja todas las solicitudes entrantes.
- Clase de acción: Con la clase de acción se desarrolla toda la lógica de negocio, también el llamado Modelo.
- Formulario de acción : Action Form es un bean Java que asocia una o más Action Mappings. Mantiene el estado de la sesión de una aplicación web.
- Mapeo de acciones: Con Action Mapping, podemos hacer el mapeo entre Objeto y Acción.
- Acción adelante: Se utiliza para reenviar el resultado del controlador al destino.
P # 4) ¿Cuáles son las nuevas características de Struts2?
Responder: Las características destacadas de Struts2 son las siguientes.
- En Struts2, la clase Action es POJO. No necesitamos heredar ninguna clase ni implementar ninguna interfaz.
- Struts2 tiene JSP, marcador libre y Valocity para el componente de vista.
- En Struts2, el controlador frontal es StrutsPrepareAndExecuteFilter.
- En Struts2, el nombre del archivo de configuración debe ser struts.xml y debe colocarse dentro del directorio de clases.
- Struts2 utiliza el concepto de interceptores al procesar la solicitud.
P # 5) ¿Qué es MVC?
herramientas para probar servicios web tranquilos
Responder: MVC significa Modelo, Vista y Controlador y se llama Patrón de Diseño de Software para desarrollar aplicaciones web.
Modelo: Model es responsable de mantener el estado de los datos y la lógica empresarial de la aplicación.
Vista: Ver es responsable de mostrar todos los datos a utilizar, es decir, muestra la presentación.
Controlador: El controlador actúa como una interfaz entre la vista y el modelo. Intercepta todas las solicitudes, es decir, recibe entradas y comandos al Modelo / Vista para cambiar en consecuencia.

P # 6) ¿Qué son los interceptores?
Responder: Los interceptores son el objeto que proporciona la lógica de preprocesamiento antes de llamar a la acción o proporciona una lógica de posprocesamiento después de que se llama a la acción. Los interceptores se pueden utilizar para realizar diversas operaciones como validaciones, manejo de excepciones, carga de archivos, visualización de resultados intermedios, etc.
P # 7) ¿Cuáles son los métodos de ciclo de vida del interceptor?
Responder: Hay tres métodos de ciclo de vida del Interceptor como se menciona a continuación.
- método init ()
- método intercept ()
- método destroy ()
Q #8) ¿Cómo se maneja una solicitud en la aplicación Struts2?
Respuesta: Una solicitud en la aplicación Struts2 se maneja de la siguiente manera.
- En primer lugar, el usuario envía la solicitud recibida al servidor.
- Luego, FilterDispatcher maneja la solicitud y selecciona una acción adecuada para ella.
- Los interceptores definidos realizan operaciones de preprocesamiento como carga de archivos, manejo de excepciones, etc.
- Ahora se ejecuta la acción seleccionada y se realiza la operación.
- Nuevamente, los interceptores definidos realizan operaciones de posprocesamiento como carga de archivos, manejo de excepciones, etc.
- El resultado final se muestra al usuario en forma de página de visualización.
P # 9) ¿Cuál es la función del archivo Struts.xml en Struts?
Responder: En el archivo struts.xml, el usuario puede definir todo el mapeo de acciones para que se llame a una acción en particular cuando se realiza una operación en particular. También se llama como archivo de configuración y está presente en la carpeta WEB-INF / classes.
P # 10) ¿Qué archivos de configuración se utilizan en Struts?
Respuesta: Los archivos de configuración utilizados en Struts incluyen:
- ApplicationResource.properties.
- Struts-config.xml.
P # 11) ¿Cuál es el uso de los métodos Validate () y Reset () en Struts?
Responder:
Validar () El método se utiliza para validar las propiedades después de que se hayan completado y se llama antes de que el Form Bean se pase a la acción. Devuelve una colección de errores de acción.
Sintaxis: Public ActionErrors Validate (mapeo ActionMapping, solicitud HttpServletRequest)
Reiniciar () El método se utiliza para restablecer todos los datos de ActionForm antes de que se establezcan los nuevos valores. Es llamado por el marco de struts con cada solicitud que usa un formulario de acción definido.
Sintaxis: public void reset ((mapeo ActionMapping, solicitud HttpServletRequest)
P # 12) ¿Qué quiere decir con Value Stack?
Responder: Una pila de valor se puede explicar como una pila que contiene objetos específicos de requisitos. La acción permanece en la parte superior de la pila mientras se ejecuta.
Luego, los objetos se colocan en Value Stack y el usuario puede realizar operaciones SQL en ellos.
Los diversos métodos de Value Stack son los siguientes:
- FindString (): Se usa para encontrar la cadena de la expresión dada.
- FindValue (): Se usa para encontrar el valor de la expresión dada.
- Peek (): Da el objeto ubicado en la parte superior de la pila.
- Pop (): Da el objeto ubicado en la parte superior de la pila y lo quita.
- Empujar (): Empuja el objeto a la parte superior de la pila.
P # 13) ¿Qué quiere decir con contexto de acción?
Responder: El contexto de acción es un contenedor de objetos en el que se ejecutan acciones. Los valores que se almacenan en el contexto de acción son únicos por subproceso (es decir, Thread Local), como resultado de lo cual, no es necesario que nuestra acción sea segura para subprocesos.
Al llamar al método getContext () de la clase ActionContext, podemos obtener la referencia de ActionContext. Es un método de fábrica estático.
Por ejemplo: ActionContext context = ActionContext.getContext ();
P # 14) ¿Cuál es el uso de ActionInvocation?
Responder: ActionInvocation se utiliza para representar el estado de ejecución de la acción. Contiene la acción y el objeto interceptor.
cómo agregar valores a una matriz
P # 15) ¿Cuál es el uso de OGNL?
Responder: Object Graph Navigation Language (OGNL) es un lenguaje de expresión fuerte. Ayuda a simplificar la accesibilidad de los datos almacenados en ActionContext. OGNL admite la interacción con colecciones, es decir, mapas, listas y conjuntos.
El marco de struts ayuda a establecer ValueStack como el objeto raíz de OGNL. El objeto de acción se inserta en ValueStack y podemos acceder directamente a la propiedad de acción.
P # 16) ¿Cuáles son los tipos de constantes presentes en la interfaz de acción?
Responder: Hay cinco tipos de constantes proporcionados por la interfaz de acción.
Son:
- Acceso
- Aporte
- Éxito
- Error
- Ninguno
P # 17) ¿Cómo podemos crear clases de acción en Struts2?
Responder: Hay muchas formas de crear clases de acción en Struts2.
Algunos de ellos son los siguientes:
- Usando la anotación Strts2 @Action.
- Amplíe la clase ActionSupport.
- Implementando la Interfaz de Acción.
- Cualquier clase de Java que consista en un valor de retorno de execute () se puede configurar como la Clase de acción.
P # 18) ¿Cómo podemos manejar las excepciones en Struts?
Responder: En Struts, las excepciones se pueden manejar de dos formas, como se muestra a continuación.
- Manejo de excepciones programáticas: En esto, podemos usar el bloque Try {} Catch {} para manejar la excepción.
- Manejo de excepciones declarativas: Aquí, podemos definir las etiquetas de manejo de excepciones globales en struts-config.xml o definir etiquetas de manejo de excepciones dentro de las etiquetas.
P # 19) ¿Cuáles son los tipos de bibliotecas de etiquetas en Struts?
Responder: Struts proporciona muchas bibliotecas de etiquetas para facilitar el desarrollo de software.
Son:
- Biblioteca de etiquetas de frijoles: Se utiliza para acceder a Java Beans y sus propiedades.
- Biblioteca de etiquetas anidadas: Proporciona la capacidad de utilizar beans anidados en la aplicación.
- Biblioteca de etiquetas lógicas: Se utiliza para proporcionar la salida requerida, la capacidad de iteración y la gestión del flujo.
- Biblioteca de etiquetas HTML: Ayuda a obtener la salida HTML requerida.
- Biblioteca de etiquetas de mosaicos: Se utiliza en aplicaciones que tienen mosaicos.
P # 20) ¿Cuáles son los diferentes tipos de acciones de Struts?
Responder: Hay 5 tipos de acciones de Struts.
Son los siguientes:
- Acción hacia adelante: Con esta clase, podemos controlar el controlador Struts y su funcionalidad, sin tener que reescribir los Servlets existentes.
- Incluir acción: Usar la clase IncludeAction para incluir otro recurso en la respuesta a la solicitud que se está procesando.
- Acción del interruptor: Se utiliza para cambiar un recurso en un módulo a otro recurso en otro módulo.
- Acción de envío: Se utiliza para combinar las acciones relacionadas en una sola clase.
- LookUpAction: Se utiliza para impulsar la acción con una tecla si el nombre de la acción no funciona.
P # 21) ¿Cuáles son los diferentes tipos de etiquetas en Struts2?
Responder: Los diversos tipos de etiquetas en Struts2 son los siguientes:
- Etiqueta de control (En caso contrario, etiqueta, etiqueta de iterador, etiqueta de combinación, etiqueta de adición, etiqueta de generador, etc.)
- Etiqueta de datos (Etiqueta de acción, Etiqueta de inclusión, Etiqueta de frijol, Etiqueta de fecha, Etiqueta de parámetro, Etiqueta de propiedad, Etiqueta de inserción, Etiqueta de conjunto, Etiqueta de texto, etc.)
- Día de la forma (Todas las etiquetas de interfaz de usuario simples).
- Día del Ajax
P # 22) ¿Cuál es el tipo de resultado predeterminado en Struts2?
Responder: El tipo de resultado predeterminado en struts2 es el dispatcher. Se utiliza para enviar las páginas JSP.
P # 23) ¿Qué quiere decir con internacionalización? ¿Por qué lo necesitamos?
Responder: La internacionalización (i18n) es el interceptor que se utiliza para planificar e implementar productos y servicios para que se puedan adaptar fácilmente a idiomas y culturas locales específicos, es decir, un proceso llamado localización.
Maneja la configuración regional de la acción. Se puede utilizar si el usuario desea establecer su configuración regional y obtener datos de acuerdo con la configuración regional proporcionada.
P # 24) ¿Cuáles son los componentes principales de Struts2?
Responder: Los componentes principales de Struts2 son los siguientes:
- Interceptores
- Pila de valor
- Contexto de acción
- OGNL
- Acción Invocación
P # 25) ¿Cómo podemos crear un Interceptor personalizado?
Responder: Podemos crear el interceptor personalizado implementando la interfaz Interceptor en una clase y anulando su método de tres ciclos de vida, es decir. init (), Destroy (), Intercept () . También se puede crear definiendo la entrada del interceptor en el archivo struts.xml.
cómo abrir un archivo swf
P # 26) ¿Cuál es la funcionalidad del Token Interceptor en Struts2?
Responder: El principal problema con las aplicaciones web es el envío de formularios dobles que resulta en cobrar cantidades dobles al usuario y almacenar valores dobles en la base de datos. Podemos usar un interceptor de tokens para resolver el problema de envío de formularios dobles. Este interceptor está definido en el paquete struts-default.
P # 27) ¿Cómo cargar archivos en la aplicación Struts2?
Responder: Con la ayuda de FileUploadInterceptor, podemos cargar archivos en la aplicación struts2.
P # 28) ¿Está sincronizada la acción de Struts2?
Responder: Sí, las acciones de Struts2 se sincronizan cuando se invoca un objeto para manejar cualquier nueva solicitud entrante.
P # 29) ¿Están sincronizados los interceptores Struts2?
Responder: Como los interceptores Struts2 son clases de singleton y como se crea un nuevo hilo para manejar la solicitud, no está sincronizado y debemos implementarlos con cuidado para evitar problemas con los datos compartidos.
P # 30) ¿Qué es el controlador frontal en Struts2?
Responder: StrutsPrepareAndExecuteFilter es la clase Front Controller en Struts2, también es el punto de partida de cada solicitud entrante.
P # 31) ¿Cómo se vinculan ValueStack y OGNL?
Responder: OGNL es una biblioteca a través de la cual se manipulan los datos o valores de ValueStack, mientras que ValueStack es una pila donde se almacenan todos los valores y datos relacionados con las acciones.
Q #32) Escriba la sintaxis para mostrar la página de salida usando XML en Struts2?
Respuesta: Aquí en Struts2, un usuario puede declarar el archivo XML como se muestra a continuación:
|_+_|Q #33) ¿Qué patrón de diseño siguen los interceptores?
Responder: Los interceptores siguen un patrón de diseño basado en los filtros de interceptación.
P # 34) ¿Dónde se encuentra la etiqueta de complemento en Struts2? ¿Cuál es la función de la etiqueta de complemento?
Responder: La etiqueta de complemento se encuentra en struct-config.xml y se usa para indicarle al usuario dónde se encuentra el archivo de propiedades que tiene todos los mensajes de aviso y error.
P # 35) ¿Cuáles son las desventajas del marco Struts?
Respuesta: Algunas de las desventajas de Struts Framework son las siguientes:
- Solo se utiliza un controlador de servlet.
- No hay documentación adecuada.
- La transparencia no es total.
- El enfoque es inflexible.
- Hay muchas cosas que aprender.
Conclusión
Hemos aprendido mucho sobre Struts Framework en este artículo informativo. ¿Vimos qué es Struts Framework? El flujo de Struts Framework, la necesidad de Struts, las ventajas de Struts sobre otros marcos, la arquitectura y componentes de Struts, las clases y sus archivos de configuración.
También exploramos el concepto de interceptores, contexto de acción, OGNL, invocación de acción, métodos de ciclo de vida, diferentes tipos de etiquetas, manejo de excepciones en Struts, etc.
Espero que este artículo te haya ayudado a comprender fácilmente los conceptos de Struts. Puede responder preguntas con confianza sobre Struts con la ayuda de este artículo informativo.
Lectura recomendada
- 20 preguntas de entrevista selectiva de control de calidad para aclarar la entrevista en 2021
- Las 25 mejores preguntas y respuestas de la entrevista de pruebas ágiles
- Más de 25 preguntas y respuestas más populares de la entrevista ADO.NET
- Más de 25 preguntas y respuestas principales de la entrevista de Spring MVC
- Las 30 preguntas y respuestas más importantes de la entrevista PL / SQL en 2021
- Las 30 preguntas y respuestas principales de las entrevistas en HTML (LISTA 2021)
- Más de 30 preguntas y respuestas principales de la entrevista de Scrum (LISTA 2021)
- 31 preguntas y respuestas principales de la entrevista sobre pruebas de bases de datos
- 48 preguntas y respuestas principales de la entrevista de AngularJS (LISTA 2021)