top 35 frequently asked struts interview questions answers
Acest tutorial cu privire la întrebările de interviu cu răspunsuri explică conceptele Struts cu exemple simple:
Această serie de întrebări Struts vă va duce prin prezentarea generală completă a Struts Framework, Fluxul unei aplicații, nevoia de Struts, acțiunile sale, constantele etc., împreună cu intrările utilizate în Struts. Acest articol va acoperi toate întrebările importante care sunt puse în orice interviu Struts.
Nimeni nu vă va cere să scrieți cod cu Strtus2, acesta va plasa în jurul tuturor întrebărilor teoretice și intervievatorul vrea doar să știe dacă candidatul are cunoștințe de bază despre fluxul cadrului Struts sau nu.
După ce ați analizat temeinic toate aceste întrebări, dacă puteți explica conceptele în propriile cuvinte cu mici exemple în timp real, ați terminat atunci.
Cele mai frecvente întrebări Struts intervievează cu răspunsuri
Q # 1) Ce este Struts Framework? Care sunt componentele sale?
Răspuns: Struts este un tip de cadru de dezvoltare a aplicațiilor web care oferă o platformă adecvată pentru dezvoltarea aplicațiilor web. Struturile includ servleturi, JSP, etichete personalizate și resurse de mesaje într-un cadru unificat.
Q # 2) De ce folosim Struts?
Răspuns: Deoarece Struts se bazează pe arhitectura MVC, adică Model, View, Controller, separă Business Logic, Design & Controller, în urma căreia face codul mai simplu, mai ușor de întreținut și mai ușor de citit.
Î # 3) Care sunt clasele importante ale aplicației Struts?
Răspuns: Înscrise mai jos sunt cele mai importante clase ale aplicației Struts.
- Servlet de acțiune: Este clasa controlerului și gestionează toate cererile primite.
- Clasa de acțiune: Cu clasa Action se dezvoltă toată logica de afaceri așa-numitul Model.
- Formular de acțiune : Formularul de acțiune este un fasole Java care asociază una sau mai multe mapări de acțiune. Menține starea sesiunii pentru o aplicație web.
- Cartografierea acțiunilor: Cu Action Mapping, putem face maparea între Object și Action.
- Acțiune înainte: Este folosit pentru a redirecționa rezultatul de la controler la destinație.
Q # 4) Care sunt noile caracteristici ale Struts2?
Răspuns: Caracteristicile proeminente ale Struts2 sunt următoarele.
- În Struts2, clasa Action este POJO. Nu este nevoie să moștenim nicio clasă sau să implementăm nicio interfață.
- Struts2 are JSP, Free marker și Valocity pentru componenta de vizualizare.
- În Struts2, Front Controller este StrutsPrepareAndExecuteFilter.
- În Struts2, numele fișierului de configurare trebuie să fie struts.xml și trebuie plasat în directorul claselor.
- Struts2 folosește conceptul de interceptori în timpul procesării cererii.
Q # 5) Ce este MVC?
cum se vizualizează un fișier .dat
Răspuns: MVC înseamnă Model, View și Controller și se numește Software Design Pattern pentru dezvoltarea aplicațiilor web.
Model: Modelul este responsabil pentru menținerea stării datelor și a logicii afacerii aplicației.
Vedere: View este responsabil să afișeze toate datele de utilizat, adică arată prezentarea.
Controlor: Controlerul acționează ca o interfață între View și Model. Interceptează toate cererile, adică primește intrări și comenzi către Model / Vizualizare pentru a le modifica corespunzător.

Q # 6) Ce sunt interceptorii?
Răspuns: Interceptorii sunt obiectul care oferă logica de pre-procesare înainte ca acțiunea să fie chemată sau oferă o logică de post-procesare după ce acțiunea este chemată. Interceptorii pot fi utilizați pentru a efectua diverse operațiuni, cum ar fi validări, gestionarea excepțiilor, încărcarea fișierelor, afișarea rezultatelor intermediare etc.
Q # 7) Care sunt metodele ciclului de viață ale interceptorului?
Răspuns: Există trei metode ale ciclului de viață ale interceptorului, după cum se menționează mai jos.
- metoda init ()
- metoda intercept ()
- metoda distruge ()
Q # 8) Cum este tratată o cerere în aplicația Struts2?
Răspuns: O cerere în aplicația Struts2 este tratată în modul de mai jos.
- În primul rând, cererea primită este trimisă către server de către utilizator.
- Apoi, cererea este gestionată de FilterDispatcher, care selectează o acțiune adecvată pentru aceasta.
- Interceptorii definiți efectuează operații de pre-procesare, cum ar fi încărcarea fișierelor, gestionarea excepțiilor etc.
- Acum acțiunea selectată este executată și operația este efectuată.
- Din nou, interceptorii definiți efectuează operațiuni de post-procesare, cum ar fi încărcarea fișierelor, gestionarea excepțiilor etc.
- Rezultatul final este afișat utilizatorului sub forma paginii de vizualizare.
Q # 9) Care este funcția fișierului Struts.xml din Struts?
Răspuns: În fișierul struts.xml, utilizatorul poate defini toate mapările la acțiuni, astfel încât o anumită acțiune să fie apelată atunci când se efectuează o anumită operație. Este, de asemenea, numit fișier de configurare și este prezent în folderul WEB-INF / classes.
Q # 10) Ce fișiere de configurare sunt utilizate în Struts?
Răspuns: Fișierele de configurare utilizate în Struts includ:
- ApplicationResource.properties.
- Struts-config.xml.
Q # 11) La ce folosește metodele Validate () și Reset () în Struts?
Răspuns:
Validați () metoda este utilizată pentru a valida proprietățile după ce au fost populate și este apelată înainte ca Form Bean să fie trecut la acțiune. Returnează o colecție de erori de acțiune.
Sintaxă: Public ActionErrors Validate (ActionMapping mapping, HttpServletRequest request)
Reset () metoda este utilizată pentru a reseta toate datele ActionForm înainte de setarea noilor valori. Este apelat de cadrul struts cu fiecare cerere care utilizează un formular de acțiune definit.
Sintaxă: resetare nulă publică ((mapare ActionMapping, cerere HttpServletRequest)
Q # 12) Ce vrei să spui prin Value Stack?
Răspuns: O stivă de valori poate fi explicată ca o stivă care conține obiecte specifice cerințelor. Acțiunea rămâne în partea de sus a stivei în timpul executării.
Obiectele sunt apoi plasate în Value Stack și utilizatorul poate efectua operațiuni SQL pe acesta.
Diferitele metode de Value Stack sunt după cum urmează:
- FindString (): Folosit pentru a găsi șirul din expresia dată.
- FindValue (): Folosit pentru a găsi valoare din expresia dată.
- Peek (): Oferă obiectul situat în partea de sus a stivei.
- Pop (): Oferă obiectul situat în partea de sus a stivei și îl elimină.
- Apăsați (): Împinge obiectul în partea de sus a stivei.
Q # 13) Ce vrei să spui prin contextul acțiunii?
Răspuns: Contextul acțiunii este un container de obiecte în care sunt executate acțiuni. Valorile stocate în contextul de acțiune sunt unice pentru fiecare fir (de ex., Subiect local), ca urmare, nu este nevoie să ne asigurăm siguranța acțiunii noastre.
Apelând metoda getContext () a clasei ActionContext, putem obține referința ActionContext. Este o metodă de fabrică statică.
De exemplu: Context ActionContext = ActionContext.getContext ();
Q # 14) La ce folosește ActionInvocation?
Răspuns: ActionInvocation este utilizat pentru a reprezenta starea de execuție a acțiunii. Deține acțiunea și obiectul interceptor.
Q # 15) La ce folosește OGNL?
Răspuns: Limbajul de navigare cu grafice de obiecte (OGNL) este un limbaj de expresie puternic. Ajută la simplificarea accesibilității datelor stocate în ActionContext. OGNL acceptă interacțiunea cu colecțiile, adică Hartă, Listă și Set.
Cadrul struts ajută la setarea ValueStack ca obiect rădăcină al OGNL. Obiectul de acțiune este împins în ValueStack și putem accesa direct proprietatea de acțiune.
Q # 16) Care sunt tipurile de constante prezente în interfața de acțiune?
Răspuns: Există cinci tipuri de constante furnizate de interfața de acțiune.
Sunt:
- Logare
- Intrare
- Succes
- Eroare
- Nici unul
Q # 17) Cum putem crea clase de acțiune în Struts2?
Răspuns: Există multe modalități de a crea clase de acțiune în Struts2.
Unele dintre ele sunt după cum urmează:
- Utilizarea adnotării Strts2 @Action.
- Extindeți clasa ActionSupport.
- Prin implementarea interfeței de acțiune.
- Orice clasă java constând din valoarea returnată execute () poate fi configurată ca clasă de acțiune.
Î # 18) Cum putem gestiona excepțiile în Struts?
Răspuns: În Struts, excepțiile pot fi gestionate în două moduri, așa cum se arată mai jos.
programe care folosesc c ++
- Manipularea excepțiilor programatice: În acest sens, putem utiliza blocul Încercați {} Captură {} pentru a gestiona excepția.
- Manipulare declarativă a excepțiilor: Aici, putem defini etichetele de gestionare a excepțiilor globale în struts-config.xml sau defini etichetele de gestionare a excepțiilor în etichete.
Q # 19) Care sunt tipurile de biblioteci de etichete din Struts?
Răspuns: Struts oferă multe biblioteci de etichete pentru a facilita dezvoltarea software-ului.
Sunt:
- Biblioteca de etichete de fasole: Folosit pentru accesarea Java Beans și a proprietăților sale.
- Biblioteca de etichete imbricate: Oferă posibilitatea de a utiliza fasole imbricată în aplicație.
- Biblioteca de etichete logice: Folosit pentru a oferi ieșirea necesară, capacitatea de iterație și gestionarea fluxului.
- Biblioteca de etichete HTML: Ajută la obținerea rezultatului HTML necesar.
- Biblioteca de etichete Tiles: Folosit în aplicații care au plăci.
Q # 20) Care sunt diferitele tipuri de acțiuni Struts?
Răspuns: Există 5 tipuri de acțiuni Struts.
Acestea sunt după cum urmează:
- Acțiune înainte: Cu această clasă, putem controla controlerul Struts și funcționalitatea acestuia, fără a fi nevoie să rescriem servletele existente.
- Includeți acțiune: Utilizarea clasei IncludeAction pentru a include o altă resursă în răspunsul la solicitarea procesată.
- Comutați acțiunea: Folosit pentru a comuta o resursă dintr-un modul în altă resursă din alt modul.
- Acțiune de expediere: Folosit pentru a combina acțiunile aferente într-o singură clasă.
- LookUpAction: Folosit pentru a conduce acțiunea cu o cheie dacă numele acțiunii nu funcționează.
Q # 21) Care sunt diferitele tipuri de etichete din Struts2?
Răspuns: Diferitele tipuri de etichete din Struts2 sunt după cum urmează:
- Etichetă de control (Dacă etichetă altfel, etichetă Iterator, etichetă Merge, adăugați etichetă, etichetă generator etc.)
- Etichetă de date (Etichetă de acțiune, Includeți etichetă, etichetă de fasole, etichetă de dată, parametru, etichetă de proprietate, etichetă push, setare etichetă, etichetă text etc.)
- Zi de formă (Toate etichetele UI simple.)
- Ziua Ajax
Q # 22) Care este tipul de rezultat implicit în Struts2?
Răspuns: Tipul de rezultat implicit în struts2 este dispeceratul. Este folosit pentru a expedia paginile JSP.
Q # 23) Ce vrei să spui prin internaționalizare? De ce avem nevoie de ea?
Răspuns: Internaționalizarea (i18n) este interceptorul care este utilizat pentru planificarea și implementarea produselor și serviciilor, astfel încât acestea să poată fi adaptate cu ușurință la limbi și culturi locale specifice, adică un proces numit localizare.
Se ocupă de setările locale pentru acțiune. Poate fi utilizat dacă utilizatorul dorește să își seteze locația și să obțină date în funcție de localizarea furnizată.
Q # 24) Care sunt componentele de bază ale Struts2?
Răspuns: Componentele de bază ale Struts2 sunt următoarele:
- Interceptori
- Stivă de valoare
- Contextul acțiunii
- OGNL
- ActionInvocation
Q # 25) Cum putem crea interceptor personalizat?
Răspuns: Putem crea interceptorul personalizat implementând interfața Interceptor într-o clasă și anulând metoda sa de trei cicluri de viață, adică init (), Destroy (), Intercept () . Poate fi creat și prin definirea intrării interceptorului în fișierul struts.xml.
Q # 26) Care este funcționalitatea Token Interceptor în Struts2?
Răspuns: Problema majoră cu aplicațiile web este trimiterea formularului dublu care are ca rezultat încărcarea de sume duble de la utilizator și stocarea valorilor duble în baza de date. Putem folosi un interceptor de simboluri pentru a rezolva problema de trimitere a formularului dublu. Acest interceptor este definit în pachetul struts-default.
Q # 27) Cum se încarcă fișiere în aplicația Struts2?
Răspuns: Cu ajutorul FileUploadInterceptor, putem încărca fișiere în aplicația struts2.
Q # 28) Acțiunea Struts2 este sincronizată?
Răspuns: Da, Acțiunile Struts2 sunt sincronizate pe măsură ce se invocă un obiect pentru a gestiona orice nouă solicitare de intrare.
Q # 29) Sunt interceptorii Struts2 sincronizați?
Răspuns: Deoarece interceptorii Struts2 sunt clase singleton și pe măsură ce se creează un fir nou pentru a gestiona cererea, acesta nu este sincronizat și trebuie să le implementăm cu atenție pentru a evita orice problemă cu datele partajate.
Q # 30) Ce este controlerul frontal în Struts2?
Răspuns: StrutsPrepareAndExecuteFilter este clasa Front Controller din Struts2, este, de asemenea, punctul de plecare al fiecărei cereri primite.
Q # 31) Cum sunt legate ValueStack și OGNL?
Răspuns: OGNL este o bibliotecă prin care datele sau valorile ValueStack sunt manipulate, în timp ce ValueStack este o stivă în care sunt stocate toate valorile și datele legate de acțiuni.
Q # 32) Scrieți sintaxa pentru a afișa pagina de ieșire folosind XML în Struts2?
Răspuns: Aici, în Struts2, un utilizator poate declara fișierul XML așa cum se arată mai jos:
output.jsp error.jsp
Q # 33) Ce tipar de proiectare este urmat de interceptori?
Răspuns: Interceptorii urmează un model de proiectare bazat pe filtrele de interceptare.
Q # 34) Unde se găsește eticheta Plug-in în Struts2? Care este funcția etichetei plug-in?
Răspuns: Eticheta plug-in se găsește în struct-config.xml și este utilizată pentru a spune utilizatorului unde se găsește fișierul de proprietăți care are toate mesajele de prompt și de eroare.
Q # 35) Care sunt dezavantajele Struts Framework?
Răspuns: Unele dintre dezavantajele Struts Framework sunt următoarele:
- Este utilizat un singur controler de servlet.
- Nu există documentație adecvată.
- Transparența nu este completă.
- Abordarea este inflexibilă.
- O mulțime de lucruri sunt acolo de învățat.
Concluzie
Am învățat multe despre Struts Framework din acest articol informativ. Am văzut ce este Struts Framework? Fluxul de Struts Framework, necesitatea de Struts, avantajele Struts față de alte cadre, Struts Architecture & Components, Classs și fișierele sale de configurare.
De asemenea, am explorat conceptul de interceptori, contextul acțiunii, OGNL, invocarea acțiunii, metodele ciclului de viață, diferite tipuri de etichete, gestionarea excepțiilor în Struts etc.
locuri de vizionat anime gratuit
Sper că acest articol v-a ajutat să înțelegeți cu ușurință conceptele Struts. Puteți răspunde cu încredere la întrebări despre Struts cu ajutorul acestui articol informativ.
Lectură recomandată
- 20 de întrebări selective privind interviul de asigurare a calității pentru a șterge interviul în 2021
- Cele mai bune 25 de întrebări și răspunsuri de interviu pentru testarea agilă
- 25+ Cele mai populare întrebări și răspunsuri la interviurile ADO.NET
- 25+ Întrebări și răspunsuri la interviu de primăvară MVC
- 30 Cele mai importante întrebări și răspunsuri la interviu PL / SQL în 2021
- 30 de întrebări și răspunsuri de top pentru interviuri HTML (LISTA 2021)
- 30+ Întrebări și răspunsuri de top pentru interviurile Scrum (LISTA 2021)
- 31 Întrebări și răspunsuri de top pentru testarea bazei de date
- 48 Întrebări și răspunsuri de top pentru AngularJS (LISTA 2021)