top 35 frequently asked struts interview questions answers
Questo tutorial sulle domande dell'intervista su Struts con risposte spiega i concetti di Struts con semplici esempi:
Questa serie di domande su Struts ti guiderà attraverso la panoramica completa di Struts Framework, il flusso di un'applicazione, la necessità di Struts, le sue azioni, costanti, ecc., Insieme agli input utilizzati in Struts. Questo articolo coprirà tutte le domande importanti che vengono poste in ogni intervista di Struts.
Nessuno ti chiederà di scrivere codice con Strtus2, girerà intorno a tutte le domande teoriche e l'intervistatore vuole solo sapere se il candidato ha una conoscenza di base sul flusso del framework Struts o meno.
Dopo aver esaminato a fondo tutte queste domande, se riesci a spiegare i concetti con parole tue con piccoli esempi in tempo reale, allora hai finito.
Domande di intervista di Struts più frequenti con risposte
D # 1) Cos'è Struts Framework? Quali sono i suoi componenti?
Risposta: Struts è un tipo di Web Application Development Framework che fornisce una piattaforma adatta per lo sviluppo di applicazioni web. Struts include servlet, JSP, tag personalizzati e risorse di messaggi in un framework unificato.
D # 2) Perché usiamo Struts?
Risposta: Poiché Struts si basa sull'architettura MVC, ovvero Model, View, Controller, separa Business Logic, Design e Controller, per cui rende il codice più semplice, manutenibile e leggibile.
D # 3) Quali sono le classi importanti dell'applicazione Struts?
Risposta: Di seguito sono elencate le classi più importanti dell'applicazione Struts.
- Servlet di azione: È la classe controller e gestisce tutte le richieste in arrivo.
- Classe di azione: Con la classe Action viene sviluppata tutta la logica di business anche cosiddetta Model.
- Modulo di azione : Action Form è un java bean che associa uno o più Action Mapping. Mantiene lo stato della sessione per un'applicazione web.
- Mappatura delle azioni: Con Action Mapping, possiamo fare la mappatura tra Object e Action.
- Azione in avanti: Serve per inoltrare il risultato dal Controller alla destinazione.
D # 4) Quali sono le nuove funzionalità di Struts2?
Risposta: Le caratteristiche principali di Struts2 sono le seguenti.
- In Struts2, la classe Action è POJO. Non abbiamo bisogno di ereditare alcuna classe o implementare alcuna interfaccia.
- Struts2 ha JSP, indicatore gratuito e Valocity per il componente di visualizzazione.
- In Struts2, il front controller è StrutsPrepareAndExecuteFilter.
- In Struts2, il nome del file di configurazione deve essere struts.xml e deve essere inserito nella directory delle classi.
- Struts2 utilizza il concetto di Interceptor durante l'elaborazione della richiesta.
Q # 5) Cos'è MVC?
software gratuito di intelligenza artificiale per PC
Risposta: MVC sta per Model, View e Controller ed è chiamato Software Design Pattern per lo sviluppo di applicazioni web.
Modello: Il modello è responsabile del mantenimento dello stato dei dati e della logica aziendale dell'applicazione.
Visualizza: View è responsabile di mostrare tutti i dati da utilizzare, ovvero mostra la presentazione.
Controller: Il controller funge da interfaccia tra View e Model. Intercetta tutte le richieste, cioè riceve input e comandi a Model / View per cambiare di conseguenza.

Q # 6) Cosa sono gli Interceptor?
Risposta: Gli intercettatori sono l'oggetto che fornisce la logica di pre-elaborazione prima che l'azione venga chiamata o fornisce una logica di post-elaborazione dopo che l'azione viene chiamata. Gli intercettatori possono essere utilizzati per eseguire varie operazioni come convalide, gestione delle eccezioni, caricamento di file, visualizzazione di risultati intermedi, ecc.
D # 7) Quali sono i metodi del ciclo di vita dell'Interceptor?
Risposta: Esistono tre metodi del ciclo di vita dell'Interceptor, come indicato di seguito.
- metodo init ()
- metodo intercept ()
- metodo destroy ()
Q # 8) Come viene gestita una richiesta nell'applicazione Struts2?
Risposta: una richiesta nell'applicazione Struts2 viene gestita nel modo seguente.
- In primo luogo, la richiesta ricevuta viene inviata al server dall'utente.
- Quindi la richiesta viene gestita da FilterDispatcher che seleziona un'azione appropriata per essa.
- Gli intercettori definiti eseguono operazioni di pre-elaborazione come caricamento di file, gestione delle eccezioni, ecc.
- Ora l'azione selezionata viene eseguita e l'operazione viene eseguita.
- Anche in questo caso gli intercettori definiti eseguono operazioni di post-elaborazione come il caricamento di file, la gestione delle eccezioni, ecc.
- Il risultato finale viene mostrato all'utente sotto forma di pagina di visualizzazione.
D # 9) Qual è la funzione del file Struts.xml in Struts?
Risposta: Nel file struts.xml, l'utente può definire tutta la mappatura alle azioni in modo che una particolare azione venga chiamata quando viene eseguita una particolare operazione. Viene anche chiamato come file di configurazione ed è presente nella cartella WEB-INF / classes.
D # 10) Quali file di configurazione vengono utilizzati in Struts?
Risposta: i file di configurazione utilizzati in Struts includono:
- ApplicationResource.properties.
- Struts-config.xml.
D # 11) Qual è l'uso dei metodi Validate () e Reset () in Struts?
Risposta:
Convalida () viene utilizzato per convalidare le proprietà dopo che sono state popolate e viene chiamato prima che il Form Bean venga passato all'azione. Restituisce una raccolta di errori di azione.
Sintassi: Public ActionErrors Validate (mapping ActionMapping, richiesta HttpServletRequest)
Ripristina () viene utilizzato per reimpostare tutti i dati di ActionForm prima che vengano impostati i nuovi valori. Viene chiamato dal framework struts con ogni richiesta che utilizza un modulo di azione definito.
Sintassi: public void reset ((ActionMapping mapping, HttpServletRequest request)
D # 12) Cosa intendi per Value Stack?
Risposta: Uno stack di valori può essere spiegato come uno stack che contiene oggetti specifici dei requisiti. L'azione rimane in cima alla pila durante l'esecuzione.
Gli oggetti vengono quindi inseriti in Value Stack e l'utente può eseguire operazioni SQL su di esso.
I vari metodi di Value Stack sono i seguenti:
- FindString (): Utilizzato per trovare la stringa dall'espressione data.
- FindValue (): Utilizzato per trovare il valore dall'espressione data.
- Peek (): Dà l'oggetto che si trova in cima alla pila.
- Pop (): Dà l'oggetto che si trova in cima alla pila e lo rimuove.
- Spingere (): Spinge l'oggetto in cima alla pila.
D # 13) Cosa intendi per contesto d'azione?
Risposta: Il contesto dell'azione è un contenitore di oggetti in cui vengono eseguite le azioni. I valori memorizzati nel contesto dell'azione sono univoci per thread (ad es. Thread locale), per cui non abbiamo bisogno di rendere la nostra azione thread-safe.
Chiamando il metodo getContext () della classe ActionContext, possiamo ottenere il riferimento di ActionContext. È un metodo di fabbrica statico.
Per esempio: Contesto ActionContext = ActionContext.getContext ();
Q # 14) A cosa serve ActionInvocation?
Risposta: ActionInvocation viene utilizzato per rappresentare lo stato di esecuzione dell'azione. Contiene l'azione e l'oggetto intercettore.
Q # 15) Qual è l'uso di OGNL?
Risposta: Object Graph Navigation Language (OGNL) è un linguaggio di espressione forte. Aiuta a semplificare l'accessibilità dei dati archiviati in ActionContext. OGNL supporta l'interazione con le raccolte, ad esempio Map, List e Set.
Il framework struts aiuta a impostare ValueStack come oggetto radice di OGNL. L'oggetto azione viene inserito nel ValueStack e possiamo accedere direttamente alla proprietà dell'azione.
D # 16) Quali sono i tipi di costanti presenti nell'Action Interface?
Risposta: Sono disponibili cinque tipi di costanti fornite dall'interfaccia di azione.
Sono:
- Login
- Ingresso
- Successo
- Errore
- Nessuna
D # 17) Come possiamo creare classi di azioni in Struts2?
Risposta: Esistono molti modi per creare classi di azioni in Struts2.
Alcuni di loro sono i seguenti:
- Utilizzo dell'annotazione Strts2 @Action.
- Estendi la classe ActionSupport.
- Implementando l'interfaccia d'azione.
- Qualsiasi classe java composta dal valore restituito da execute () può essere configurata come classe di azione.
D # 18) Come possiamo gestire le eccezioni in Struts?
Risposta: In Struts, le eccezioni possono essere gestite in due modi come mostrato di seguito.
- Gestione delle eccezioni programmatiche: In questo, possiamo utilizzare il blocco Try {} Catch {} per gestire l'eccezione.
- Gestione dichiarativa delle eccezioni: Qui, possiamo definire i tag di gestione delle eccezioni globali in struts-config.xml o definire i tag di gestione delle eccezioni all'interno dei tag.
D # 19) Quali sono i tipi di librerie di tag in Struts?
Risposta: Struts fornisce molte librerie di tag per facilitare lo sviluppo del software.
Sono:
- Libreria di tag Bean: Utilizzato per accedere a Java Beans e alle sue proprietà.
- Libreria di tag nidificata: Fornisce la possibilità di utilizzare i bean nidificati nell'applicazione.
- Libreria di tag logici: Utilizzato per fornire l'output richiesto, la capacità di iterazione e la gestione del flusso.
- Libreria di tag HTML: Aiuta a ottenere l'output HTML richiesto.
- Libreria di tag di piastrelle: Utilizzato in applicazioni con piastrelle.
D # 20) Quali sono i diversi tipi di azioni Struts?
Risposta: Esistono 5 tipi di azioni Struts.
come leggere un file .bin
Sono i seguenti:
- Azione in avanti: Con questa classe, possiamo controllare il controller Struts e le sue funzionalità, senza dover riscrivere i Servlet esistenti.
- Includi azione: Utilizzo della classe IncludeAction per includere un'altra risorsa nella risposta alla richiesta in fase di elaborazione.
- Cambia azione: Utilizzato per passare da una risorsa in un modulo a un'altra risorsa in un altro modulo.
- Azione di spedizione: Utilizzato per combinare le azioni correlate in una singola classe.
- LookUpAction: Utilizzato per guidare l'azione con una chiave se il nome dell'azione non funziona.
D # 21) Quali sono i diversi tipi di tag in Struts2?
Risposta: I vari tipi di tag in Struts2 sono i seguenti:
- Tag di controllo (Se Else tag, Iterator Tag, Merge Tag, Append Tag, Generator Tag, ecc.)
- Tag di dati (Tag di azione, tag di inclusione, tag di bean, tag di data, tag di parametro, tag di proprietà, tag di push, tag di impostazione, tag di testo, ecc.)
- Giorno della forma (Tutti i semplici tag dell'interfaccia utente.)
- Giorno Ajax
D # 22) Qual è il tipo di risultato predefinito in Struts2?
Risposta: Il tipo di risultato predefinito in struts2 è il dispatcher. Viene utilizzato per inviare le pagine JSP.
D # 23) Cosa intendi per internazionalizzazione? Perchè ne abbiamo bisogno?
Risposta: L'internazionalizzazione (i18n) è l'interceptor utilizzato per la pianificazione e l'implementazione di prodotti e servizi in modo che possano essere facilmente adattati a lingue e culture locali specifiche, ad esempio un processo chiamato localizzazione.
Gestisce l'impostazione della locale per l'azione. Può essere utilizzato se l'utente desidera impostare la propria locale e ottenere i dati in base alla locale fornita.
D # 24) Quali sono i componenti principali di Struts2?
Risposta: I componenti principali di Struts2 sono i seguenti:
- Intercettori
- Stack di valore
- Contesto dell'azione
- OGNL
- ActionInvocation
Q # 25) Come possiamo creare Custom Interceptor?
Risposta: Possiamo creare l'interceptor personalizzato implementando l'interfaccia Interceptor in una classe e sovrascrivendo il suo metodo a tre cicli di vita, ad es. init (), Destroy (), Intercept () . Può anche essere creato definendo la voce dell'interceptor nel file struts.xml.
come aprire un file torrent
D # 26) Qual è la funzionalità di Token Interceptor in Struts2?
Risposta: Il problema principale con le applicazioni web è la doppia presentazione del modulo che si traduce nell'addebito di importi doppi da parte dell'utente e nella memorizzazione di valori doppi nel database. Possiamo usare un intercettatore di token per risolvere il problema dell'invio del doppio modulo. Questo intercettore è definito nel pacchetto struts-default.
D # 27) Come caricare i file nell'applicazione Struts2?
Risposta: Con l'aiuto di FileUploadInterceptor, possiamo caricare i file nell'applicazione struts2.
D # 28) L'azione di Struts2 è sincronizzata?
Risposta: Sì, le azioni Struts2 vengono sincronizzate quando un oggetto viene richiamato per gestire qualsiasi nuova richiesta in arrivo.
D # 29) Gli intercettori Struts2 sono sincronizzati?
Risposta: Poiché gli intercettori di Struts2 sono classi singleton e quando viene creato un nuovo thread per gestire la richiesta, non viene sincronizzato e dobbiamo implementarli con attenzione per evitare problemi con i dati condivisi.
D # 30) Cos'è il front controller in Struts2?
Risposta: StrutsPrepareAndExecuteFilter è la classe Front Controller in Struts2, è anche il punto di partenza di ogni richiesta in arrivo.
D # 31) Come sono collegati ValueStack e OGNL?
Risposta: OGNL è una libreria attraverso la quale vengono manipolati i dati oi valori ValueStack mentre ValueStack è uno stack in cui vengono memorizzati tutti i valori ei dati relativi alle azioni.
Q # 32) Scrivere la sintassi per visualizzare la pagina di output utilizzando XML in Struts2?
Risposta: qui in Struts2, un utente può dichiarare il file XML come mostrato di seguito:
output.jsp error.jsp
Q # 33) Quale Design Pattern è seguito dagli Interceptor?
Risposta: Gli intercettatori seguono un modello di progettazione basato sui filtri di intercettazione.
D # 34) Dove si trova il tag Plug-in in Struts2? Qual è la funzione del tag Plug-in?
Risposta: Il tag del plug-in si trova in struct-config.xml e viene utilizzato per indicare all'utente dove si trova il file delle proprietà che contiene tutti i messaggi di richiesta e di errore.
D # 35) Quali sono gli svantaggi di Struts Framework?
Risposta: Alcuni degli svantaggi di Struts Framework sono i seguenti:
- Viene utilizzato un solo controller servlet.
- Nessuna documentazione adeguata.
- La trasparenza non è completa.
- L'approccio è inflessibile.
- Ci sono molte cose da imparare.
Conclusione
Abbiamo imparato molto su Struts Framework da questo articolo informativo. Abbiamo visto cos'è Struts Framework? Il flusso di Struts Framework, la necessità di Struts, i vantaggi di Struts rispetto ad altri framework, architettura e componenti Struts, classi e file di configurazione.
Abbiamo anche esplorato il concetto di intercettatori, contesto di azione, OGNL, invocazione di azioni, metodi del ciclo di vita, diversi tipi di tag, gestione delle eccezioni in Struts, ecc.
Spero che questo articolo ti abbia aiutato a comprendere facilmente i concetti di Struts. Puoi rispondere con sicurezza alle domande su Struts con l'aiuto di questo articolo informativo.
Lettura consigliata
- 20 domande di intervista QA selettive per completare l'intervista nel 2021
- 25 migliori domande e risposte per l'intervista al test agile
- Oltre 25 domande e risposte per i colloqui di ADO.NET più popolari
- 25+ Top Spring MVC Intervista Domande e Risposte
- Le 30 domande e risposte dell'intervista PL / SQL più importanti nel 2021
- 30 principali domande e risposte per i colloqui HTML (2021 LIST)
- Oltre 30 principali domande e risposte dell'intervista su Scrum (ELENCO 2021)
- 31 Top Database Testing Intervista Domande e risposte
- 48 principali domande e risposte per l'intervista di AngularJS (2021 LIST)