JSP-interjúkérdések (2025)
JSP interjúkérdések pályakezdőknek
1) Magyarázza el a JSP-t, és mondja el a használatát.
A JSP jelentése Java Szerver oldalak. Ez egy platformtól független prezentációs réteg technológia. A SUN J2EE platformjaival érkezik. Olyanok, mint a HTML oldalak, de Java beléjük ágyazott kódrészletek. A mentésük .jsp kiterjesztéssel történik. A háttérben a JSP fordítóval vannak lefordítva, és Servletet generálnak az oldalról.
👉 Ingyenes PDF letöltés: JSP-interjú kérdések és válaszok
2) Mi a követelmény a címkekönyvtárral?
Az egyéni címkék gyűjteményét címkekönyvtárnak nevezik. Az ismétlődő feladatok könnyebben kezelhetők, és több alkalmazásban újra felhasználhatók a termelékenység növelése érdekében. A webalkalmazás-tervezők használják őket, akik a prezentációra összpontosítanak az adatbázisok vagy más szolgáltatások elérése helyett. Néhány népszerű könyvtár a String címkekönyvtár és az Apache megjelenítőcímkekönyvtár.
3) Magyarázza el a JSP technológiát.
JSP szabványos kiterjesztése Java és a Servlet-bővítmények tetején van meghatározva. Célja a dinamikus weboldalak kezelésének és létrehozásának egyszerűsítése. Platformfüggetlen, biztonságos, és kihasználja Java szerveroldali szkriptnyelvként.
4) Magyarázza el az implicit objektumokat a JSP-ben.
A webtároló által létrehozott objektumok, amelyek egy adott kéréssel, alkalmazással vagy oldallal kapcsolatos információkat tartalmaznak, meghívásra kerülnek Implicit objektumok. Ők :
- válasz
- kivétel
- alkalmazás
- kérni
- ülés
- oldal
- ki
- config
- oldalKontextus
5) Hogyan akadályozható meg, hogy a frissítés gombra kattintás miatt többszöri beküldés történjen?
Post/Redirect/Get vagy PRG minta használatával ez a probléma megoldható.
1) A felhasználó által kitöltött űrlapot POST vagy GET módszerrel küldik el a szervernek. Frissül az adatbázis állapota és az üzleti modell.
2) Az átirányítási választ a kiszolgáló kisalkalmazása használja a megtekintési oldalra.
3) A böngésző a GET paranccsal betölt egy nézetet, és nem küld felhasználói adatokat. Ez biztonságos a többszöri beküldéstől, mivel ez egy különálló JSP-oldal.
6) Bővíthető a JSP technológia?
Igen, a JSP könnyen bővíthető címkék használatával és módosításával, vagy egyedi műveletekkel, amelyek címkekönyvtárakba vannak foglalva.
7) Tegyen különbséget a response.sendRedirect(url) és a .
<jsp.forward>
elem továbbítja a kérelem objektumot 1 JSP fájlból egy másikba. Target fájl lehet HTML, szervlet vagy más JSP-fájl, de ugyanabban az alkalmazás-kontextusban kell lennie, mint a JSP-fájl továbbítása.
sendRedirect HTTP ideiglenes átirányítási választ küld a böngészőnek. A böngésző ezután új kérést hoz létre az átirányított oldalhoz. Megöli a munkamenet változóit.
8) Elérhető-e egy következő kérés a szervlet kódjával, ha a JSP-ben már el lett küldve egy request attribútum?
A kérelem hatókörén kívül esik, így nem érhető el. Ha azonban egy kérés attribútum be van állítva a szervletben, akkor az elérhető a JSP-ben.
A JSP egy szerveroldali összetevő, és az oldalt a nyelvre fordítják Java servletet, majd végre kell hajtani. Kimenetként csak HTML kód kerül megadásra.
9) Hogyan lehet statikus fájlokat beilleszteni egy JSP oldalba?
A statikus oldalak mindig szerepelnek a JSP include direktívával. Így a beillesztés a fordítási fázisban egyszer megtörténik. Vegye figyelembe, hogy a fájlattribútumhoz relatív URL-t kell megadni. Bár statikus erőforrások is szerepelhetnek benne, ez nem előnyös, mivel minden kérésnek tartalmaznia kell.
10) Miért van az, hogy a JComponentnek van add() és remove() metódusa, de a Componentnek nincs?
A JComponent a Container alosztálya. Más komponenseket és JComponenteket is tartalmaz.
JSP interjúkérdések tapasztalt szakembereknek
Az alábbiakban találja a JSP interjú kérdéseit és válaszait tapasztalt jelölteknek:
11) Hogyan valósítható meg egy szál biztonságos JSP oldal?
Ezt úgy lehet megtenni, hogy azokat a SingleThreadModel Interface implementálja. Adja hozzá a <%@page isThreadSafe=”false” %> direktívát a JSP-oldalhoz.
12) Hogyan akadályozható meg, hogy a JSP vagy szervlet oldal kimenetét a böngésző gyorsítótárazza?
Megfelelő HTTP-fejléc-attribútumok használata annak megakadályozására, hogy a JSP-oldal dinamikus tartalomkimenetét a böngésző gyorsítótárba helyezze.
13) Hogyan korlátozható az oldalhibák megjelenése a JSP oldalon?
Ha beállít egy „ErrorPage” attribútumot a PAGE könyvtárban a hibaoldal nevéhez a JSP oldalon, majd a jsp hibaoldalkészletben „isErrorpage=”TRUE”, a hibák megjelenítése megakadályozható.
14) Mik azok a JSP-műveletek?
Ezek XML-címkék, amelyek a kiszolgálót a meglévő összetevők használatára vagy a JSP Engine viselkedésének szabályozására irányítják. Ezek egy tipikus „jsp:” előtagból és a művelet nevéből állnak.
<jsp:include/> <jsp:getProperty/> <jsp:forward/> <jsp:setProperty/> <jsp:usebean/> <jsp:plugin/>
15) Tegyen különbséget és <%@include file=…>.
Mindkét címke egy oldalról a másikra tartalmaz információkat.
Az első címke függvényhívásként működik két Jsp között. Minden alkalommal végrehajtódik, amikor az ügyfél hozzáfér az ügyféloldalhoz. Hasznos a webalkalmazás modularizálása. Új tartalom szerepel a kimenetben.
A fájl második címke tartalma szövegesen van beágyazva, hasonló direktívával. A megváltozott tartalom nem szerepel a kimenetben. Hasznos, ha egy jsp kódját több jsp is megköveteli.
16) Használható konstruktor az init() helyett a servlet inicializálására?
Igen, lehetséges. De nem előnyös, mert az init()-et korábban fejlesztették ki Java verziók nem tudták dinamikusan meghívni az argumentumokkal rendelkező konstruktorokat. Így nem tudtak servletConfig-ot hozzárendelni. Ma azonban a servlet konténerek még mindig csak no-arg konstruktort hívnak. Tehát nincs hozzáférés a servletContexthez vagy a servletConfighoz.
17) Ismertesse az életciklus-módszereket!
1) jsplnit(): A tároló ezt hívja meg a szervlet példány inicializálásához. A szervlet példányhoz csak egyszer hívják meg, és minden más metódust megelőz.
2) _jspService(): A tároló ezt minden kérésnél meghívja, és továbbadja az objektumoknak.
3) jspDestroy(): A tároló közvetlenül a példány megsemmisítése előtt hívja meg.
18) Magyarázza el a JSP kimeneti megjegyzéseket?
Ezek olyan megjegyzések, amelyek HTML-forrásfájlban tekinthetők meg.
19) Határozza meg a kifejezést
A kifejezési címkét a beszúráshoz használják Java értékek közvetlenül a kimenetben. A szintaxisa az
<%=expression%>
Tartalmaz egy szkriptnyelvi kifejezést, amelyet a rendszer kiértékel, majd karakterláncsá konvertál, majd beszúrja a kifejezés helyét a JSP-fájlba.
20) Kompozíció meghatározása.
A kompozíció erősebb kapcsolatban áll a tárggyal, mint az Aggregáció.
21) Határozza meg a JSP Scriptletet.
Ez egy JSP címke, amely bezárja Java kódot a JSP oldalakon. Szintaxisuk <% %>. A scriptletben írt kód a program minden futtatásakor lefut.
22) Hogyan továbbíthatók az egyik JSP-ből származó információk egy másik JSP-nek?
A címke lehetővé teszi, hogy információkat továbbítsunk több Jsp között.
23) Ismertesse a felhasználását címke.
<jsp:useBean> id="beanInstName" scope= "page | application" class="ABC.class" type="ABC.class" </jsp:useBean>
Ez a címke létrehozza a Java bean példányát. Először is megpróbálja megkeresni, hogy létezik-e már komponenspéldány, és hozzárendel egy hivatkozást a változóban. A típus is meg van adva; ellenkező esetben a megadott osztályból példányosít, hivatkozást tárolva az új változóban.
24) Ismertesse a futásidejű kivételek kezelését.
Az Errorpage attribútum a hibafeldolgozó oldalra automatikusan továbbított futásidejű kivételek feloldására szolgál.
Átirányítja a böngészőt az error.jsp JSP-oldalra, ha a kéréskezelés során az el nem ért kivételek arcok. Ez egy hibafeldolgozó oldal.
25) Miért kezdődik a _jspService() '_' karakterrel, de a többi életciklus-metódus nem?
Bármilyen tartalom is készült egy jsp oldalon, a tároló _jspService() metódusába kerül. Ha felülírják, akkor a fordító hibát ad, de a másik 2 életciklus könnyen felülbírálható. Tehát a '_' azt jelzi, hogy ezt a módszert nem tudjuk felülírni.
26) Magyarázza el a különböző hatókörértékeket címke.
címke bármely Java objektum használatára szolgál a jsp oldalon. Néhány hatókör érték:
1) alkalmazás
2) kérni
3) oldal
4) munkamenet
27) Mutassa meg a 2 típusú megjegyzést a JSP-ben.
A 2 típus a következő:
<%–JSP Comment–%> <!–HTML comment–>
28) Felülbírálható a statikus módszer?
Deklarálhatunk statikus metódusokat azonos aláírással az alosztályban, de ez nem tekinthető felülbírálónak, mivel nem lesz futásidejű polimorfizmus. Ezért a válasz „Nem”.
29) Magyarázza el a JSP direktívákat.
JSP irányelvek üzenetek a JSP Engine-nek. Üzenetként szolgálnak oldalról tárolóra, és szabályozzák a teljes oldal feldolgozását. Globális értékeket állíthatnak be, például osztálydeklarációt. Nem termelnek kimenetet, és a <%@….%> közé vannak zárva
30) Magyarázza el a pge irányelveket.
Az oldalirányelvek tájékoztatják a JSP Engine-t azokról a fejlécekről és szolgáltatásokról, amelyeket az oldal kap a környezettől. Az összes JSP-oldal tetején található. A szintaxisa az <%@ page attribute=”value”>
31) Az oldal direktívák attribútumainak megjelenítése.
- Ülés: Megmutatja, hogy elérhetőek-e a munkamenet adatai az oldal számára.
- import: az importált csomagokat mutatja.
- isELIgnored: Megmutatja, hogy a rendszer figyelmen kívül hagyja-e az EL kifejezéseket, amikor a JSP a-ra fordítódik szervlet.
- tartalom típus: lehetővé teszi a felhasználó számára az oldal tartalomtípusának megadását.
32) Mi az az Include direktíva?
Az include direktíva statikusan beilleszti egy erőforrás tartalmát az aktuális JSP-be. Segít a kód többszörözés nélküli újrafelhasználásában. és tartalmazza a fájl tartalmát a fordítás idején. A szintaxisa a következő <%@ include file=”Filename”%>
.
33) Mik a szokásos műveletek a JSP-ben?
Befolyásolják az oldal általános futásidejű viselkedését és az ügyfélnek küldött választ. Arra használják őket, hogy kéréskor fájlt csatoljanak be, példányosítsák a JavaBab vagy keress egyet. Böngészőspecifikus kód generálására vagy kérés új oldalra történő továbbítására is szolgál.
34) Magyarázza el a jsp:setProperty műveletet.
Arra használják, hogy értékeket adjon azoknak a babok tulajdonságainak, amelyekre korábban hivatkoztak.
…
<jsp:setProperty name=”ABC” property=”myProperty”…
A jsp:setproperty akkor is végrehajtásra kerül, ha új komponens példányosodik vagy meglévő komponens található.
Hozzáadásával a kód végén a végrehajtás feltétele megfordítva, azaz nem hajtódik végre, ha létező objektumot találtunk, és csak akkor, ha egy új objektumot példányosítottak.
35) Statikus blokk meghatározása.
A statikus adattag indítására szolgál. Az osztálybetöltés előtt lefut.
36) Magyarázza el a jsp:plugin műveletet.
Ez a művelet segít beszúrni egy adott objektumot a böngészőbe, vagy beágyazni a kisalkalmazás futtatásának meghatározásához szükséges elemet Java plugin.
37) Magyarázza el a kliens- és szerveroldali érvényesítést.
Javascript kliensoldali érvényesítéshez használják. Ez a böngészőben történik. Javascript az űrlap adatainak elküldésére szolgál, ha az érvényesítés sikeres. Az érvényesítési hibák nem igényelnek további hálózati utat, mert az űrlapot nem lehet elküldeni.
Az érvényesítés a beküldés után a szerveren is megtörténik. Ha az érvényesítés sikertelen, akkor az űrlap újbóli elküldéséhez további hálózati útra van szükség.
38) Mi az a fordítási fázis?
A JSP-motor lefordítja és lefordítja a JSP-fájlt szervletté. Ez a szervlet a végrehajtási fázisba lép, ahol a kérések és válaszok kezelése történik. Ezeket az első alkalommal fordítják le, és csak akkor érik el őket, hacsak manuálisan nem fordították le idő előtt. A kézi vagy explicit fordítás hasznos hosszú és bonyolult programok esetén.
39) Hajtsa végre a böngésző átirányítását egy JSP-oldalról.
<% response.sendRedirect(URL); %>
vagy megváltoztathatjuk a HTTP-fejléc attribútumának helyét a következőképpen:
<% response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); response.setHeader(URL); %>
40) Adja meg az objektumklónozás felhasználási lehetőségeit.
Az objektum klónozást egy objektum pontos másolatának létrehozására használják ugyanazon kód beírásával vagy különféle egyéb technikák használatával.
41) Hogyan továbbíthatunk egy kérést egy másik forráshoz.
<jsp:forward page="/Page2.jsp" />
42) Hogyan akadályozható meg a munkamenet automatikus létrehozása egy JSP oldalon?
A JSP oldal automatikusan munkameneteket hoz létre a kérésekhez. A következő beírásával elkerülhető.
<%@ page session=”false” %>
43) Hogyan lehet elkerülni a scriptlet kódot a JSP-ben?
JavaA scriptlet kódja helyett a babok vagy az egyéni címkék használhatók.
44) Magyarázza el a jspDestroy() metódust!
Amikor egy JSP-oldal megsemmisül, a tároló meghívja a jspDestroy() metódust a javax.servlet.jsp.JspPage felületről. A szervletek megsemmisítési módszerei hasonlóak hozzá. Könnyen felülírható a tisztítás végrehajtása során, például egy adatbázis-kapcsolat bezárásakor.
45) Magyarázza el a akció.
Ez egy olyan művelet, amelyet a szabványos belefoglaló vagy továbbítási műveletekkel használnak. Segít a paraméternevek és értékek átadásában egy erőforrásnak.
46) Magyarázza el a statikus módszert!
A statikus metódus az osztályhoz tartozik, és nem az osztály tárgya. Meghívható osztálypéldány nélkül. A statikus tagok hozzáférhetnek a statikus adatokhoz és módosíthatják azok értékét.
47) Hogyan lehet letiltani a szkriptet?
A szkriptelés egyszerűen letiltható, ha a telepítésleíró parancsfájl érvénytelen elemét igaz értékre állítja. Ez a tulajdonságcsoport egy aleleme. Lehet hamis is.
48) Határozza meg a JSP nyilatkozatot.
A JSP Deklaráció a változók deklarálásához használt címkék. A <%!%> címkék közé vannak zárva. Függvények és változók deklarálására használják.
<%@page contentType=”text/html” %> <html> <body> <%! int a=0; private int getCount(){ a++; return a; }%> <p>Values of a are:</p> <p><%=getCount()%></p> </body> </html>
49) Hogyan akadályozható meg a HTML-kimenet gyorsítótárazása?
<% response.setHeader("Cache-Control", "no=store"); response.setDateHeader("Expires", 0); %>
50) Miben jobb a JSP, mint a Servlet technológia?
A JSP egy olyan technológia a szerver oldalán, amely egyszerűvé teszi a tartalomgenerálást. Dokumentumközpontúak, míg a szervletek programok. A Java szerver oldala tartalmazhat töredékeket Java program, amelyek végrehajtják és példányosítják Java osztályok. Azonban előfordulnak a HTML sablonfájlban. Ez biztosítja a keretet egy webalkalmazás fejlesztéséhez.
Ezek az interjúkérdések a viva-ban is segítenek.