A Struts-interjúk 50 legnépszerűbb kérdése és válasza (2025)

Íme a Struts-interjúk kérdései és válaszai pályakezdőknek és tapasztalt jelölteknek, hogy megszerezzék álmaik állását.


1. Melyek a Struts Framework összetevői?

A rugós keret a következő összetevőkből áll:

  1. Java szervletek
  2. JSP (Java szerver oldalak)
  3. Egyéni címkék
  4. Üzenetforrások

Ingyenes PDF letöltés: Struts-interjú kérdések és válaszok


2. Mi a kezelő szerepe az MVC alapú alkalmazásokban?

A kezelők feladata, hogy a kéréseket a megfelelő modellekhez továbbítsák, mivel azok az MVC architektúra modellrétegéhez vannak kötve. A kezelők a konfigurációs fájlokból származó leképezési információkat használják fel a kérések átviteléhez.


3. Milyen a kérések áramlása a Struts alapú alkalmazásokban?

A rugóstag alapú alkalmazások MVC tervezési mintát használnak. A kérelmek menete a következő:

  • A felhasználó úgy lép kapcsolatba a View szolgáltatással, hogy bármely linkre kattint, vagy bármilyen űrlapot elküld.
  • A felhasználó interakciója után a kérés átadódik a vezérlőnek.
  • Az adatkezelő felelős azért, hogy a kérést a megfelelő intézkedésre továbbítsa.
  • Az Action felelős egy olyan függvény meghívásáért a Modelben, amely minden üzleti logikát megvalósított.
  • A modellrétegtől érkező választ a művelet visszakapja, amely továbbítja azt a nézet felé, ahol a felhasználó láthatja a választ.

4. Melyik fájlt használja a vezérlő a leképezési információk lekéréséhez a kérés útválasztásához?

A vezérlő a „struts-config.xml fájlt, hogy megkapja az összes leképezési információt annak eldöntéséhez, hogy melyik műveletet használja a felhasználói kérés irányításához.


5. Mi a szerepe az akcióosztálynak a Struts-ban?

A Strutsban az Action Class vezérlőként működik, és a következő kulcsfontosságú feladatokat látja el:

  • A felhasználói kérés beérkezése után feldolgozza a felhasználó kérését.
  • Megfelelő modellt használ, és adatokat gyűjt a modellből (ha szükséges).
  • A megfelelő nézet kiválasztása a válasz megjelenítéséhez a felhasználó számára.
Struts interjúkérdések
Struts interjúkérdések

6. Hogyan jön létre egy actionForm bab?

Helyettes

Az actionForm komponens az osztály kiterjesztésével jön létre org.apache.struts.action.ActionForm

In the following example we have created an actionForm bean with the name 'testForm':

import javax.servlet.http.HttpServletRequest; 
import org.apache.struts.action.*; 
public class testForm extends ActionForm { 
private String Id=null; 
private String State=null; 
public void setId(String id){
this.Id=id; 
} 
public String getId(){
return this.Id;
}
public void setState(String state){ 
this.State=state; 
} 
public String getState(){ 
return this.State; 
}

7. Milyen kétféle ellenőrzést támogat a Validator FrameWork?

A Validator Framework az űrlapadatok érvényesítésére szolgál. Ez a keretrendszer kétféle ellenőrzést biztosít:

  1. Kliensoldali érvényesítés a felhasználó böngészőjében
  2. Szerver oldali érvényesítés

8. Melyek a rugóstagok telepítésének lépései?

A Struts keretrendszer használatához csak a Struts.Jar fájlt kell hozzáadnunk a fejlesztői környezetünkhöz. Amint a jar fájl elérhető a CLASSPATH-ban, használhatjuk a keretrendszert és fejleszthetünk Strut alapú alkalmazásokat.

Struts interjúkérdések
Struts interjúkérdések

9. Hogyan engedélyezhető az ügyféloldali érvényesítés a JSP űrlapon?

A kliensoldali érvényesítés engedélyezéséhez a Strutsban először engedélyeznünk kell a validátor beépülő modult a struts-config.xml fájlban. Ez a következő konfigurációs bejegyzések hozzáadásával érhető el ebben a fájlban:

<!--  Validator plugin -->
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property
property="pathnames"
value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/>
</plug-in>

Ezután az érvényesítési szabályokat a validation.xml fájl határozza meg. Ha egy űrlap e-mail mezőt tartalmaz, és engedélyezni szeretnénk ehhez a mezőhöz az ügyféloldali érvényesítést, akkor a következő kód kerül hozzáadásra a validation.xml fájlhoz:

<form name="testForm">
<field  property="email"
depends="required">
<arg key="testForm.email"/>
</field>
</form>

10. Hogyan használható az action-mapping tag a kérések továbbítására a Struts konfigurációs fájlban?

A Struts konfigurációs fájlban (struts-config.xml) a továbbítási beállítások a műveletleképezés címke alatt vannak meghatározva.

A következő példában, amikor a felhasználó rákattint a hiperhivatkozásra test.do, a kérelmet a címre továbbítjuk /pages/testing.jsp a következő konfigurációk használatával a struts-config.xml fájlból:

<action  path="/test" forward="/pages/testing.jsp">

Ez az továbbítás akkor történik meg, amikor a felhasználó a következő hivatkozásra kattint a jsp oldalon:

<html:link</strong> page="/test.do</strong>">Controller Example</html:link>

11. Hogyan vezérelhető a duplikált űrlapok benyújtása a Strutsban?

A Strutsban az akcióosztály két fontos módszert biztosít, amelyek segítségével elkerülhető az ismétlődő űrlapok beküldése.

A saveToken() műveletosztály metódusa egyedi tokent generál, és elmenti a felhasználó munkamenetébe. Az isTokenValid() metódus használatos, majd a tokenek egyediségének ellenőrzésére szolgál.


12. A Strutsban hogyan érhetjük el a Java babokat és tulajdonságaikat?

A Bean Tag Library egy Struts könyvtár, amely Java babok elérésére használható.


13. Melyik konfigurációs fájlt használják a JSP konfigurációs információk tárolására a Strutsban?

A JSP konfigurációs részleteihez a Web.xml fájl kerül felhasználásra.


14. Mi a célja az Execute method of action osztálynak?

A műveletosztály végrehajtási metódusa felelős az üzleti logika végrehajtásáért. Ha a felhasználó kérésére bármilyen feldolgozásra van szükség, akkor az ezzel a módszerrel történik. Ez a metódus az actionForward objektumot adja vissza, amely az alkalmazást a megfelelő oldalra irányítja.

A következő példában az execute metódus a struts-config.xml fájlban definiált actionForward objektumot adja vissza „exampleAction” néven:

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

public class actionExample extends Action
{
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) throws Exception{
return mapping.findForward("exampleAction");
}
}

15. Mi a különbség a validation.xml és a validator-rules.xml fájlok között a Struts Validation keretrendszerben?

A Validation.xml-ben érvényesítési szabályokat határozunk meg bármely adott Java komponenshez, míg a validator-rules.xml fájlban szabványos és általános érvényesítési szabályok vannak meghatározva.


16. Hogyan jeleníthetjük meg az összes érvényesítési hibát a felhasználó számára a JSP oldalon?

Az összes érvényesítési hiba megjelenítéséhez a validation.xml fájlban meghatározott érvényesítési szabályok alapján használjuk címkét a JSP fájlunkban.


17. Mi a deklaratív kivételkezelés a Strutsban?

Ha a kivételkezelés logikája a struts-config.xml fájlban vagy az akciócímkén belül van definiálva, akkor ezt deklaratív kivételkezelésnek nevezik a Strutsban.

A következő példában kivételt definiáltunk a struts-config.xml fájlban a NullPointerException számára:

<global-exceptions>

<exception key="test.key"

Type="java.lang.NullPointerException"

Path="/WEB-INF/errors/error_page.jsp"

</global-exceptions>

18. Mi az a DynaActionForm?

A DynaActionForm egy speciális típusú actionForm osztály (az ActionForm osztály alosztálya), amelyet űrlapelemek dinamikus létrehozására használnak. Konfigurációs fájlokat használ az űrlap komponensek létrehozásához.


19. Milyen konfigurációs változtatások szükségesek a csempe használatához a Strutsban?

Újrafelhasználható komponensek létrehozásához a Tiles keretrendszerrel, a következő bővítménydefiníciós kódot kell hozzáadnunk a struts-config.xml fájlhoz:

<plug-in className="org.apache.struts.tiles.TilesPlugin" >

<set-property property="definitions-config" value="/WEB-INF/tiles-defs.xml" />

<set-property property="moduleAware" value="true" />

</plug-in>

20. Mi a különbség a Jakarta Struts és az Apache Struts között? Melyiket érdemesebb használni?

Mindkettő ugyanaz, és nincs köztük különbség.


21. Mire jó a Struts.xml konfigurációs fájl?

A Struts.xml fájl a Struts keretrendszer egyik legfontosabb konfigurációs fájlja, amely az URL és a művelet közötti leképezés meghatározására szolgál. Amikor a vezérlő megkapja a felhasználói kérést, a vezérlő ebből a fájlból leképezési információkat használ a megfelelő műveletosztály kiválasztásához.


22. Hogyan definiálják a címkekönyvtárakat a Strutsban?

A címkekönyvtárak a konfigurációs fájlban (web.xml) vannak meghatározva címkézése a következőképpen:

<taglib>

<taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>

<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>

</taglib>

23. Mi a logikai címkék jelentősége a Strutsban?

A Struts logikai címkéinek használata segít tiszta és hatékony kódot írni a prezentációs rétegben scriptlet-ek használata nélkül.


24. Mi a két hatókör típusa a formbeansnek?

  • Kérelem köre: A Formbean értékek csak az aktuális kérésben érhetők el
  • A munkamenet hatóköre: A Formbean értékek az aktuális munkamenet összes kéréséhez elérhetők.

25. Hogyan csoportosíthatjuk a kapcsolódó cselekvéseket egy csoportba a Strutsban?

Több kapcsolódó művelet egy csoportba történő csoportosításához használhatjuk a DispatcherAction osztályt.


26. Mikor használjuk a SwtichAction-t?

A SwitchAction osztály használatának legjobb forgatókönyve az, ha van egy moduláris alkalmazásunk, amelyben több modul külön-külön működik. A SwitchAction osztály használatával válthatunk az egyik modulban lévő erőforrásról egy másik erőforrásra az alkalmazás különböző moduljaiban.


27. Milyen előnyei vannak a Struts keretrendszernek?

A Struts az MVC-n alapul, ezért a Strutsban jól elkülöníthetők a különböző rétegek, ami megkönnyíti a Struts alkalmazások fejlesztését és testreszabását. A különböző konfigurációs fájlok használatával a Struts alkalmazások könnyen konfigurálhatók. Ezenkívül a Struts nyílt forráskódú, és ezért költséghatékony.


28. Milyen lépések szükségesek a Struts1-ről a Struts2-re történő alkalmazásmigrációhoz?

A következő lépések szükségesek a Struts1-ről a Struts2-re való migrációhoz:

  1. Helyezze át a Struts1 actionForm-ot a Struts2 POJO-ba.
  2. Struts1 konfigurációs fájl (struts-config.xml) konvertálása Struts2 konfigurációs fájllá (struts.xml)

29. Hogyan érvényesülnek egy űrlap tulajdonságai a Strutsban?

A feltöltött tulajdonságok érvényesítéséhez az ActionForm osztály validate() metódusa használatos, mielőtt a formbean Action osztályba történő vezérlését kezelné.


30. Mire használható az ActionForm osztály reset metódusa?

reset metódus of actionForm osztály az űrlap értékeinek törlésére szolgál egy új kérés indítása előtt.


31. Mik a Struts hátrányai?

Bár a Struts számos előnnyel jár, nagyobb tanulási görbét igényel, és csökkenti a fejlesztési folyamat átláthatóságát.

A rugóstagokról szintén hiányzik a megfelelő dokumentáció, és számos összetevőjéhez a felhasználók nem tudnak megfelelő online forrásokat szerezni segítségért.


32. Mire jó a resourcebundle.properties fájl a Struts Validation keretrendszerben?

A resourcebundle.properties fájl kulcsértékpárokban specifikus hibaüzenetek meghatározására szolgál a kódban esetlegesen előforduló hibákhoz.

Ez a megközelítés segít a kód tisztán tartásában, mivel a fejlesztőnek nem kell minden hibaüzenetet a kódba ágyaznia.


33. Megkaphatom html form tulajdonság a kapcsolódó getter és setter formbean metódusok nélkül?

Minden html form tulajdonsághoz meg kell határozni a getter és setter metódusokat a formbeanben, különben az alkalmazás hibát eredményez.


34. Hány servletvezérlőt használnak egy Struts alkalmazásban?

A Struts keretrendszer a központosított vezérlési megközelítésen dolgozik, és az egész alkalmazást egyetlen szervlet vezérlő vezérli. Ezért csak egy szervlet vezérlőre van szükségünk egy szervlet alkalmazásban.


35. Egyetlen Struts alkalmazáshoz rendelkezhetünk több struts-config.xml fájllal?

Egyetlen alkalmazáshoz tetszőleges számú Struts-config.xml fájl lehet.

Ehhez a következő konfigurációkra van szükségünk:

<servlet>

<servlet-name>action</servlet-name>

<servlet-class>

org.apache.struts.action.ActionServlet

</servlet-class>

<init-param>

<param-name>config</param-name>

<param-value>

/WEB-INF/struts-config.xml

/WEB-INF/struts-config_user.xml

/WEB-INF/struts-config_admin.xml

</param-value>

</init-param>

.............

.............

</servlet>

36. Mely modellkomponenseket támogatja a Struts?

A rugóstagok minden típusú modellt támogatnak, beleértve a Java babot, az EJB-t, a CORBA-t. A Struts azonban nem rendelkezik beépített támogatással egyetlen konkrét modellhez sem, és a fejlesztő döntése, hogy bármelyik modellt választja.


37. Mikor hasznos az IncludeAction használata?

Az IncludeAction a Struts által biztosított műveletosztály, amely akkor hasznos, ha integrációra van szükség a Struts és a Servlet alapú alkalmazások között.


38. Biztonságos a Struts menet?

Igen A rugóstagok menetbiztosak. A Strutsban nincs szükség új szervlet objektumra az egyes kérések kezeléséhez; inkább egy új műveleti osztály objektum szálat használnak minden új kéréshez.


39. Milyen konfigurációs változtatások szükségesek az erőforrásfájlok használatához a Strutsban?

Az erőforrásfájlok (.properties fájlok) használhatók a Strutsban, ha hozzáadja a következő konfigurációs bejegyzést a struts-config.xml fájlhoz:

<message-resources parameter="com.login.struts.ApplicationResources"/>

40. Hogyan használhatók a beágyazott babok a Struts alkalmazásokban?

A Struts külön címkekönyvtárat (Nested Tag Library) biztosít erre a célra. Ezzel a könyvtárral beágyazhatjuk a babokat bármely Struts alapú alkalmazásba.


41. Melyek a Struts Framework alapvető osztályai?

A Struts Framework által biztosított alapvető osztályok a következők:

  • Akció osztály
  • ActionForm osztály
  • ActionMapping osztály
  • ActionForward osztály
  • ActionServlet osztály

42. Kezelhetjük-e a kivételeket a Strutsban programozottan?

Igen, a Struts-ban programozottan kezelhetjük a kivételeket a try, catch blokkok használatával a kódban.

try {

// Struts code

}

Catch (Exception e) {

// exception handling code

}

43. A Struts Framework része? J2EE?

Bár a Struts keretrendszer olyan J2EE technológiákon alapul, mint a JSP, Java Beans, Servlets stb., de nem része a J2EE szabványoknak.


44. Hogyan konfigurálható a műveletleképezés a Strutsban?

A műveletleképezések a címke alatti struts-config.xml konfigurációs fájlban vannak konfigurálva alábbiak szerint:

<pre><action-mappings>
<action path="/login"
type="login.loginAction"
name="loginForm"
input="/login.jsp"
scope="request"
validate="true">
<forward name="success" path="/index.jsp"/>
<forward name="failure" path="/login_error.jsp"/>
</action>
</action-mappings>

45. Mikor érdemes a Struts Framework mellett dönteni?

A rugóstagokat akkor kell használni, ha az alábbi feltételek bármelyike ​​vagy néhány teljesül:

  • Rendkívül robusztus vállalati szintű alkalmazásfejlesztésre van szükség.
  • Egy újrafelhasználható, jól konfigurálható alkalmazás szükséges.
  • Lazán csatolt, MVC alapú alkalmazásra van szükség a különböző rétegek egyértelmű elkülönítésével.

46. ​​Miért szimpla az ActionServlet a Strutsban?

A Struts keretrendszerben az actionServlet vezérlőként működik, és a felhasználók által küldött összes kérést ez a vezérlő vezérli. Az ActionServlet egyszemélyes tervezési mintán alapul, mivel ehhez a vezérlőosztályhoz csak egy objektumot kell létrehozni. Később minden felhasználói kéréshez több szál jön létre.


47. Milyen lépések szükségesek a validátor keretrendszer beállításához a Strutsban?

A következő lépések szükségesek az érvényesítő keretrendszer beállításához a Strutsban: – Helyesírási hiba

  1. A WEB-INF könyvtárban helyezze el a valdator-rules.xml és validation.xml fájlokat.
  2. Engedélyezze az érvényesítési bővítményt a struts-config.xml fájlokban a következő hozzáadásával:
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property property="pathnames" value="/WEB-INF/validator-rules.xml,
/WEB-INF/validation.xml"/>
</plug-in>

48. Milyen technológiák használhatók a Struts View Layer-ben?

A Strutsban a következő technológiák bármelyikét használhatjuk a nézeti rétegben:

  • JSP
  • HTML
  • XML/XSLT
  • WML fájlok
  • Sebesség sablonok
  • Szervletek

49. Mik a feltételei az actionForm megfelelő működésének?

Az ActionForm megfelelő működéséhez az alábbi feltételeknek kell megfelelnie:

  • Egy argumentum nélküli konstruktorral kell rendelkeznie.
  • Nyilvános getter és setter metódusokkal kell rendelkeznie minden tulajdonságához.

50. Melyik könyvtárat biztosítja a Struts olyan űrlapelemekhez, mint a jelölőnégyzetek, szövegdobozok stb.?

A Struts HTML Tags könyvtárat biztosít, amely űrlapelemek, például szövegmezők, szövegdobozok, rádiógombok stb. hozzáadására használható.


Ezek az interjúkérdések a viva-ban is segítenek.

Megosztás

3 Comments

  1. Köszönöm szépen uram, fantasztikus ;):) A pdf letöltési linkje nem működik. Köszönöm

    1. Hiba javítva! Köszönöm a bejelentést

Hagy egy Válaszol

E-mail címed nem kerül nyilvánosságra. Kötelező kitölteni *