top 35 frequently asked struts interview questions answers
Denna handledning om strutsintervjuer med svar förklarar strutsbegrepp med enkla exempel:
Denna serie Struts-frågor tar dig igenom den fullständiga översikten över Struts Framework, flöde av en applikation, behov av Struts, dess handlingar, konstanter etc., tillsammans med de ingångar som används i Struts. Den här artikeln kommer att täcka alla viktiga frågor som ställs i alla Struts-intervjuer.
Ingen kommer att be dig att skriva kod med Strtus2, den kommer att sväva runt alla teoretiska frågor och intervjuaren vill bara veta om kandidaten har grundläggande kunskap om flödet av Struts-ramverket eller inte.
Efter att ha gått igenom alla dessa frågor noggrant, om du kan förklara begreppen i dina egna ord med små realtidsexempel, är du klar då.
Vanliga frågor om struts Intervjufrågor med svar
F # 1) Vad är Struts Framework? Vad är dess komponenter?
Svar: Struts är en typ av webbapplikationsutvecklingsram som ger en lämplig plattform för utveckling av webbapplikationer. Struts inkluderar Servlets, JSP, anpassade taggar och meddelanderesurser i ett enhetligt ramverk.
F # 2) Varför använder vi Struts?
Svar: Eftersom Struts är baserad på MVC-arkitektur, dvs. Model, View, Controller, skiljer den Business Logic, Design & Controller, vilket gör att koden blir enklare, underhållbar och läsbar.
F # 3) Vilka är de viktiga klasserna i Struts Application?
Svar: Nedan listas de viktigaste klasserna i Struts-applikationen.
- Action Servlet: Det är kontrollerklassen och hanterar alla inkommande förfrågningar.
- Åtgärdsklass: Med Action-klass utvecklas all affärslogik, även så kallad Model.
- Åtgärdsformulär : Action Form är en Java-böna som associerar en eller flera Action Mappings. Det bibehåller sessionstillståndet för en webbapplikation.
- Åtgärdskartläggning: Med Action Mapping kan vi göra kartläggningen mellan Object och Action.
- Åtgärd framåt: Det används för att vidarebefordra resultatet från styrenheten till destinationen.
F # 4) Vilka är de nya funktionerna i Struts2?
Svar: De framträdande funktionerna i Struts2 är följande.
- I Struts2 är Action-klassen POJO. Vi behöver inte ärva någon klass eller implementera något gränssnitt.
- Struts2 har JSP, Free marker och Valocity för vykomponenten.
- I Struts2 är Front Controller StrutsPrepareAndExecuteFilter.
- I Struts2 måste konfigurationsfilnamnet vara struts.xml och bör placeras i klasskatalogen.
- Struts2 använder konceptet Interceptors när han behandlar begäran.
F # 5) Vad är MVC?
c ++ konvertera char * till int
Svar: MVC står för Model, View och Controller och kallas Software Design Pattern för att utveckla webbapplikationer.
Modell: Modellen är ansvarig för att upprätthålla tillståndet för data och affärslogik för applikationen.
Se: View är ansvarig för att visa all data som ska användas, det vill säga den visar presentationen.
Kontroller: Controller fungerar som ett gränssnitt mellan View och Model. Den avlyssnar alla förfrågningar, dvs. tar emot inmatning och kommandon till Model / View för att ändra därefter.

F # 6) Vad är interceptorer?
Svar: Avlyssnare är objektet som tillhandahåller förbehandlingslogiken innan åtgärden anropas eller tillhandahåller en efterbehandlingslogik efter att åtgärden anropas. Avlyssnare kan användas för att utföra olika operationer som valideringar, undantagshantering, filöverföring, visning av mellanresultat etc.
F # 7) Vilka är interceptorns livscykelmetoder?
Svar: Det finns tre livscykelmetoder för Interceptor som nämns nedan.
- init () metod
- intercept () metod
- förstöra () metod
F # 8) Hur hanteras en begäran i Struts2 Application?
Svar: En begäran i Struts2 Application hanteras på nedanstående sätt.
- För det första skickas den mottagna begäran till servern av användaren.
- Därefter hanteras begäran av FilterDispatcher som väljer en lämplig åtgärd för den.
- De definierade avlyssnare utför förbehandlingsoperationer som filöverföring, undantagshantering etc.
- Nu utförs den valda åtgärden och operationen utförs.
- Återigen utför de definierade avlyssnare efterbearbetningsoperationer som filöverföring, undantagshantering etc.
- Det slutliga resultatet visas för användaren i form av vyn.
F # 9) Vilken funktion har filen Struts.xml i Struts?
Svar: I filen struts.xml kan användaren definiera all mappning till åtgärder så att en viss åtgärd anropas när en viss åtgärd utförs. Det kallas också som konfigurationsfil och finns under WEB-INF / class-mappen.
F # 10) Vilka konfigurationsfiler används i struts?
Svar: Konfigurationsfilerna som används i Struts inkluderar:
- ApplicationResource.properties.
- Struts-config.xml.
F # 11) Vad använder Validate () och Reset () -metoderna i Struts?
Svar:
Validera () metoden används för att validera egenskaperna efter att de har fyllts i och den anropas innan Form Bean skickas till åtgärden. Det returnerar en samling åtgärdsfel.
Syntax: Public ActionErrors Validate (ActionMapping mapping, HttpServletRequest request)
Återställ () metoden används för att återställa all ActionForms data innan de nya värdena ställs in. Det kallas av struts-ramverket med varje begäran som använder ett definierat åtgärdsformulär.
Syntax: återställning av offentligt tomrum ((mappning av ActionMapping, HttpServletRequest-begäran)
F # 12) Vad menar du med Value Stack?
Svar: En Value Stack kan förklaras som en stack som innehåller kravspecifika objekt. Åtgärden stannar högst upp på stacken medan den körs.
Objekten placeras sedan i Value Stack och användaren kan utföra SQL-operationer på den.
De olika metoderna för Value Stack är som följer:
- FindString (): Används för att hitta strängen från det givna uttrycket.
- FindValue (): Används för att hitta värde från det givna uttrycket.
- Kika (): Det ger objektet som ligger högst upp i stacken.
- Pop (): Det ger objektet som ligger högst upp i stacken och tar bort det.
- Skjuta på (): Det skjuter objektet till toppen av stacken.
F # 13) Vad menar du med Action Context?
Svar: Action Context är en objektbehållare där åtgärder utförs. Värdena som lagras i Action Context är unika per tråd (dvs. trådlokal), vilket innebär att vi inte behöver göra vår actiontrådsäker.
Genom att anropa getContext () -metoden i ActionContext-klassen kan vi få referensen till ActionContext. Det är en statisk fabriksmetod.
Till exempel: ActionContext context = ActionContext.getContext ();
F # 14) Vad är användningen av ActionInvocation?
bästa diskrensning för Windows 10
Svar: ActionInvocation används för att representera åtgärdens exekveringstillstånd. Det håller handlingen och avlyssningsobjektet.
F # 15) Vad är användningen av OGNL?
Svar: Object Graph Navigation Language (OGNL) är ett starkt uttrycksspråk. Det hjälper till att förenkla tillgängligheten för data som lagras i ActionContext. OGNL stöder interaktion med samlingar, dvs Map, List och Set.
Struts-ramverket hjälper till att ställa in ValueStack som rotobjekt för OGNL. Åtgärdsobjektet skjuts in i ValueStack och vi kan direkt komma åt åtgärdsegenskapen.
F # 16) Vilka är de typer av konstanter som finns i åtgärdsgränssnittet?
Svar: Det finns fem typer av konstanter från Action Interface.
Dom är:
- Logga in
- Inmatning
- Framgång
- Fel
- Ingen
F # 17) Hur kan vi skapa actionklasser i Struts2?
Svar: Det finns många sätt att skapa actionklasser i Struts2.
Några av dem är som följer:
- Använda Strts2 @Action-kommentar.
- Utöka ActionSupport-klassen.
- Genom att implementera åtgärdsgränssnittet.
- Vilken Java-klass som helst som execute () returnerar värde kan konfigureras som Action Class.
F # 18) Hur kan vi hantera undantag i struts?
Svar: I Struts kan undantag hanteras på två sätt som visas nedan.
- Programmatisk undantagshantering: I detta kan vi använda Försök {} Catch {} -block för att hantera undantaget.
- Deklarativ undantagshantering: Här kan vi definiera taggar för global undantagshantering i struts-config.xml eller definiera taggar för undantagshantering.
F # 19) Vilka typer av taggbibliotek i struts?
Svar: Struts erbjuder många taggbibliotek för att underlätta programutveckling.
Dom är:
- Bean Tag Library: Används för åtkomst till Java Beans och dess egenskaper.
- Kapslat taggbibliotek: Ger möjligheten att använda kapslade bönor i applikationen.
- Logikmärkebibliotek: Används för att ge önskad effekt, iterationskapacitet och flödeshantering.
- HTML-taggbibliotek: Hjälper till att få önskad HTML-utdata.
- Brickor tagg bibliotek: Används i applikationer som har brickor.
F # 20) Vilka är de olika typerna av Struts Actions?
Svar: Det finns 5 typer av strutsåtgärder.
De är som följer:
- Framåtåtgärd: Med den här klassen kan vi styra Struts-styrenheten och dess funktionalitet utan att behöva skriva om de befintliga Servlets.
- Inkludera åtgärd: Använda IncludeAction-klassen för att inkludera en annan resurs i svaret på begäran som behandlas.
- Växlingsåtgärd: Används för att byta en resurs i en modul till en annan resurs i en annan modul.
- Avsändningsåtgärd: Används för att kombinera relaterade åtgärder i en enda klass.
- LookUpAction: Används för att köra åtgärden med en nyckel om åtgärdsnamnet inte fungerar.
F # 21) Vilka är de olika typerna av taggar i Struts2?
Svar: De olika typerna av taggar i Struts2 är följande:
- Kontrolltagg (Om Annat tagg, Iterator Tag, Merge Tag, Lägg till Tag, Generator Tag, etc.)
- Datatagg (Åtgärdstagg, Inkludera tagg, Bean Tag, Datum Tag, Param Tag, Property Tag, Push Tag, Set Tag, Text Tag, etc.)
- Form dag (Alla enkla UI-taggar.)
- Ajax dag
F # 22) Vilken är standardresultattypen i Struts2?
Svar: Standardresultattypen i struts2 är avsändaren. Den används för att skicka JSP-sidorna.
F # 23) Vad menar du med internationalisering? Varför behöver vi det?
Svar: Internationalisering (i18n) är avlyssnaren som används för att planera och implementera produkter och tjänster så att de lätt kan anpassas till specifika lokala språk och kulturer, dvs en process som kallas lokalisering.
Den hanterar inställningens språk för åtgärden. Den kan användas om användaren vill ställa in sin plats och få data enligt den angivna platsen.
F # 24) Vilka är kärnkomponenterna i Struts2?
Svar: Kärnkomponenterna i Struts2 är följande:
hur man öppnar .torrent-filer
- Avlyssnare
- Värde Stack
- Actionkontext
- OGNL
- ActionInvocation
F # 25) Hur kan vi skapa Custom Interceptor?
Svar: Vi kan skapa den anpassade avlyssnaren genom att implementera Interceptor-gränssnittet i en klass och åsidosätta dess tre livscykelmetod, dvs. init (), Destroy (), Intercept () . Det kan också skapas genom att definiera avlyssnarens post i filen struts.xml.
F # 26) Vilken funktionalitet har Token Interceptor i Struts2?
Svar: Det största problemet med webbapplikationer är dubbelformulärsinlämning som resulterar i att dubbla belopp debiteras från användaren och lagras dubbla värden i databasen. Vi kan använda en tokenavlyssnare för att lösa problemet med dubbelformulärinlämning. Denna avlyssnare definieras i paketet struts-standard.
F # 27) Hur laddar jag upp filer i Struts2-applikationen?
Svar: Med hjälp av FileUploadInterceptor kan vi ladda upp filer i struts2-applikationen.
F # 28) Är Struts2 Action synkroniserad?
Svar: Ja, Struts2-åtgärder synkroniseras när ett objekt anropas för att hantera alla nya inkommande förfrågningar.
F # 29) Är Struts2 Interceptors synkroniserade?
Svar: Eftersom Struts2-avlyssnare är singletonklasser och när en ny tråd skapas för att hantera begäran synkroniseras den inte och vi måste implementera dem noggrant för att undvika problem med delad data.
F # 30) Vad är Front Controller i Struts2?
Svar: StrutsPrepareAndExecuteFilter är klassen Front Controller i Struts2, det är också startpunkten för varje inkommande begäran.
F # 31) Hur är ValueStack och OGNL länkade?
Svar: OGNL är ett bibliotek genom vilket ValueStack-data eller värden manipuleras medan ValueStack är en stack där alla värden och data relaterade till åtgärder lagras.
F # 32) Skriv syntaxen för att visa utgångssidan med XML i Struts2?
Svar: Här i Struts2 kan en användare deklarera XML-filen enligt nedan:
output.jsp error.jsp
F # 33) Vilket designmönster följs av interceptorerna?
Svar: Avlyssnare följer ett designmönster baserat på avlyssningsfiltret.
F # 34) Var finns plugin-taggen i Struts2? Vilken funktion har plugin-taggen?
Svar: Plugin-tagg finns i struct-config.xml och används för att berätta för användaren var egenskaperfilen som har alla meddelanden och felmeddelanden finns.
F # 35) Vilka är nackdelarna med Struts Framework?
Svar: Några av nackdelarna med Struts Framework är följande:
- Endast en servletkontroll används.
- Ingen ordentlig dokumentation.
- Öppenhet är inte full.
- Tillvägagångssättet är oflexibelt.
- Många saker finns att lära sig.
Slutsats
Vi har lärt oss mycket om Struts Framework från denna informativa artikel. Vi såg vad Struts Framework är? Flödet av Struts Framework, behov av Struts, fördelar med Struts jämfört med andra ramar, Struts Architecture & Components, Classes och dess konfigurationsfiler.
Vi undersökte också konceptet Interceptors, Action Context, OGNL, Action Invocation, Life Cycle metoder, Olika typer av taggar, Undantagshantering i Struts, etc.
Hoppas den här artikeln hjälpte dig att förstå Struts-koncepten enkelt. Du kan med säkerhet svara på frågor om Struts med hjälp av den här informativa artikeln.
Rekommenderad läsning
- 20 selektiva QA-intervjufrågor för att rensa intervjun 2021
- 25 bästa intervjuer och svar på Agile Testing
- 25+ mest populära ADO.NET intervjufrågor och svar
- 25+ Top Spring MVC intervjufrågor och svar
- 30 viktigaste PL / SQL-intervjufrågor och svar 2021
- 30 Top HTML-intervjufrågor och svar (2021 LIST)
- 30+ Top Scrum-intervjufrågor och svar (2021 LIST)
- 31 Top Database Testing Intervjufrågor och svar
- 48 Top AngularJS intervjufrågor och svar (2021 LIST)