JSP-intervjufrågor (2025)
JSP-intervjufrågor för nybörjare
1) Förklara JSP och berätta om dess användningsområden.
JSP står för Java Serversidor. Det är en presentationslagerteknik oberoende av plattform. Den kommer med SUN:s J2EE-plattformar. De är som HTML-sidor men med Java kodbitar inbäddade i dem. De sparas med tillägget .jsp. De kompileras med JSP-kompilatorn i bakgrunden och genererar en Servlet från sidan.
👉 Gratis PDF-nedladdning: JSP-intervjufrågor och svar
2) Vad är kravet på ett taggbibliotek?
En samling anpassade taggar kallas ett taggbibliotek. Återkommande uppgifter hanteras lättare och återanvänds i flera applikationer för att öka produktiviteten. De används av webbapplikationsdesigners som fokuserar på presentation snarare än att komma åt databas eller andra tjänster. Några populära bibliotek är String tag library och Apache display tag library.
3) Förklara JSP-teknik.
JSP är en standardutvidgning av Java och definieras ovanpå Servlet-tillägg. Dess mål är att förenkla hantering och skapande av dynamiska webbsidor. Det är plattformsoberoende, säkert och det använder sig av Java som ett skriptspråk på serversidan.
4) Förklara implicita objekt i JSP.
Objekt skapade av webbbehållare och innehåller information om en viss begäran, applikation eller sida anropas Implicita objekt. Dom är :
- respons
- undantag
- ansökan
- begära
- session
- sida
- ut
- config
- sidaKontext
5) Hur kan flera inskickningar på grund av klick på uppdateringsknappen förhindras?
Med hjälp av ett Post/Redirect/Get eller ett PRG-mönster kan detta problem lösas.
1) Ett formulär som fylls i av användaren skickas till servern med POST- eller GET-metoden. Tillståndet i databasen och affärsmodellen uppdateras.
2) Ett omdirigeringssvar används för att svara av servleten för en visningssida.
3) En vy laddas av webbläsaren med kommandot GET och ingen användardata skickas. Detta är säkert från flera inlämningar eftersom det är en separat JSP-sida.
6) Är JSP-tekniken utbyggbar?
Ja, JSP kan enkelt utökas genom användning och modifiering av taggar, eller anpassade åtgärder, inkapslade i taggbibliotek.
7) Gör skillnad på response.sendRedirect(url) och .
<jsp.forward>
element vidarebefordrar begäranobjektet från 1 JSP-fil till en annan. Target fil kan vara HTML, servlet eller en annan JSP-fil, men den bör vara i samma applikationssammanhang som vidarebefordran av JSP-fil.
sendRedirect skicka HTTP temporärt omdirigeringssvar till webbläsaren. Webbläsaren skapar sedan en ny begäran för den omdirigerade sidan. Det dödar sessionsvariablerna.
8) Kan en efterföljande förfrågan nås med ens servletkod, om ett förfrågningsattribut redan är skickat i hans JSP?
Begäran går utanför räckvidden och kan därför inte nås. Men om ett förfrågningsattribut är satt i ens servlet, så kan det nås i hans JSP.
En JSP är en komponent på serversidan och sidan är översatt till en Java servlet och exekveras sedan. Endast HTML-kod ges som utdata.
9) Hur inkluderar man statiska filer i en JSP-sida?
Statiska sidor ingår alltid med JSP include-direktivet. På detta sätt utförs inkluderingen i översättningsfasen en gång. Observera att en relativ URL måste anges för filattribut. Även om statiska resurser kan inkluderas är det inte att föredra eftersom varje begäran kräver inkludering.
10) Varför har JComponent metoderna add() och remove() men Component har det inte?
JComponent är en underklass till Container. Den innehåller andra komponenter och JComponents.
JSP-intervjufrågor för erfarna proffs
Nedan är JSP-intervjufrågorna och svaren för erfarna kandidater:
11) Hur kan en trådsäker JSP-sida implementeras?
Det kan göras genom att de implementeras av SingleThreadModel Interface. Lägg till <%@page isThreadSafe=”false” %>-direktivet på JSP-sidan.
12) Hur kan utdata från JSP- eller servletsida förhindras från att cachelagras av webbläsaren?
Använda lämpliga HTTP-rubrikattribut för att förhindra att dynamiskt innehåll som matas ut av en JSP-sida cachelagras av webbläsaren.
13) Hur begränsar man sidfel som visas på en JSP-sida?
Genom att ställa in ett "ErrorPage"-attribut för PAGE-katalogen till namnet på felsidan på JSP-sidan, och sedan i error-jsp-siduppsättningen "isErrorpage="TRUE", kan fel stoppas från att visas.
14) Vad är JSP-åtgärder?
De är XML-taggar, som leder servern till att använda befintliga komponenter eller kontrollbeteende för JSP Engine. De består av ett typiskt prefix för "jsp:" och åtgärdsnamn.
<jsp:include/> <jsp:getProperty/> <jsp:forward/> <jsp:setProperty/> <jsp:usebean/> <jsp:plugin/>
15) Skilj mellan och <%@include file=...>.
Båda dessa taggar innehåller information från en sida till en annan.
Den första taggen fungerar som ett funktionsanrop mellan två Jsp. Den exekveras varje gång klientsidan nås av klienten. Det är användbart att modularisera webbapplikationen. Nytt innehåll ingår i utgången.
Det andra tagginnehållet i filen är textuellt inbäddat med liknande direktiv. Det ändrade innehållet ingår inte i utdata. Det är användbart när kod från en jsp krävs av flera jsp.
16) Kan konstruktor användas istället för init(), för att initiera servlet?
Ja, det är möjligt. Men det är inte att föredra eftersom init() utvecklades eftersom tidigare Java versioner kunde inte anropa konstruktörer med argument dynamiskt. Så de kunde inte tilldela en servletConfig. Men idag kallar servletcontainrar fortfarande bara no-arg constructor. Så det finns ingen tillgång till servletContext eller servletConfig.
17) Förklara livscykelmetoder.
1) jsplnit(): Behållaren anropar detta för att initiera servletinstansen. Den anropas endast en gång för servletinstansen och föregick alla andra metoder.
2) _jspService(): Containern anropar detta för varje begäran och skickar det vidare till objekten.
3) jspDestroy(): Det anropas av behållaren precis innan instansen förstörs.
18) Förklara JSP Output kommentarer?
De är kommentarer som kan ses i HTML-källfil.
19) Definiera uttryck
Uttryckstagg används för att infoga Java värden direkt i utgången. Dess syntax är
<%=expression%>
Den innehåller ett skriptspråksuttryck som utvärderas, sedan konverteras till en sträng och sedan infogas där uttrycket kommer i JSP-filen.
20) Definiera sammansättning.
Komposition har ett starkare samband med objektet än Aggregation.
21) Definiera JSP-skriptlet.
Det är en JSP-tagg som omsluter Java kod på JSP-sidor. Deras syntax är <% %>. Kod skriven i scriptlet körs varje gång programmet körs.
22) Hur kan information från en JSP skickas till en annan JSP?
Taggen tillåter oss att skicka information mellan flera Jsp:s.
23) Förklara användningen av märka.
<jsp:useBean> id="beanInstName" scope= "page | application" class="ABC.class" type="ABC.class" </jsp:useBean>
Den här taggen skapar en instans av java bean. Den försöker först hitta om bean-instansen redan finns och tilldela lagrar en referens i variabeln. Typ anges också; annars instansierar den från den angivna klassen och lagrar en referens i den nya variabeln.
24) Förklara hanteringen av körtidsundantag.
Errorpage-attribut används för att ta bort körtidsundantag som automatiskt vidarebefordras till en felbearbetningssida.
Den omdirigerar webbläsaren till JSP-sidan error.jsp om något oupptäckt undantag är ansikten under förfrågningshantering. Det är en felbearbetningssida.
25) Varför börjar _jspService() med ett '_' men andra livscykelmetoder gör det inte?
Allt innehåll som skapas på en jsp-sida går in i _jspService()-metoden av behållaren. Om det åsidosätts ger kompilatorn ett fel, men de andra 2 livscyklerna kan enkelt åsidosättas. Så '_' visar att vi inte kan åsidosätta denna metod.
26) Förklara de olika omfattningsvärdena för märka.
taggen används för att använda valfritt java-objekt på jsp-sidan. Några omfångsvärden är:
1) ansökan
2) begäran
3) sida
4) session
27) Visa de två typerna av kommentarer i JSP.
De 2 typerna är:
<%–JSP Comment–%> <!–HTML comment–>
28) Kan statisk metod åsidosättas?
Vi kan deklarera statiska metoder med samma signatur i underklass, men det anses inte åsidosätta eftersom det inte kommer att finnas någon körtidspolymorfism. Därför är svaret "Nej".
29) Förklara JSP-direktiv.
JSP-direktiv är meddelanden till JSP Engine. De fungerar som ett meddelande från sida till behållare och styr bearbetningen av hela sidan. De kan ställa in globala värden som klassdeklaration. De producerar inte utdata och är inneslutna i <%@….%>
30) Förklara siddirektiven.
Siddirektiv informerar JSP Engine om rubriker och faciliteter som sidan får från omgivningen. Den finns överst på alla JSP-sidor. Dess syntax är <%@ page attribute=”value”>
31) Visa attribut för siddirektiv.
- Session: Den visar om en sessionsdata är tillgänglig för sidan.
- Importera: den visar paket som är importerade.
- isELigneras: Den visar om EL-uttryck ignoreras när JSP översätts till en servlett.
- innehållstyp: det låter användaren specificera innehållstypen på sidan.
32) Vad är Include-direktivet?
Inkluderingsdirektivet infogar statiskt innehållet i en resurs i den aktuella JSP:n. Det hjälper till att återanvända kod utan duplicering. och inkluderar innehållet i filen vid översättningstidpunkten. Dess syntax är följande <%@ include file=”Filename”%>
.
33) Vad är standardåtgärder i JSP?
De påverkar det övergripande körtidsbeteendet för en sida och svar som skickas till klienten. De används för att inkludera en fil vid begäran, för att instansiera en JavaBean eller hitta en. De används också för att generera en webbläsarspecifik kod eller vidarebefordra en begäran till en ny sida.
34) Förklara åtgärden jsp:setProperty.
Det används för att ge värden till egenskaper hos bönor som har refererats till i förväg.
…
<jsp:setProperty name=”ABC” property=”myProperty”…
jsp:setproperty exekveras även om en ny böna instansieras eller existerande böna hittas.
Genom att lägga till i slutet av koden inverteras villkoret för exekvering, dvs det exekveras inte om befintligt objekt hittades och endast om ett nytt objekt instansierades.
35) Definiera statiskt block.
Den används för att starta den statiska datamedlemmen. Den körs före klassladdning.
36) Förklara jsp:plugin-åtgärden.
Den här åtgärden hjälper till att infoga ett specifikt objekt i webbläsaren eller bädda in elementet som behövs för att ange körning av applet med Java plugin.
37) Förklara validering på klient- och serversidan.
Javascript används för validering på klientsidan. Det sker i webbläsaren. Javascript används för att skicka in formulärdata om valideringen lyckas. Valideringsfel kräver ingen extra nätverksresa eftersom formuläret inte kan skickas.
Validering utförs även i servern efter inlämning. Om valideringen misslyckas krävs en extra nätverksresa för att skicka om formuläret till klienten.
38) Vad är översättningsfasen?
JSP-motorn översätter och kompilerar en JSP-fil till en servlet. Denna servlet flyttas till exekveringsfasen där förfrågningar och svar hanteras. De kompileras för första gången de nås om de inte kompileras manuellt i förväg. Den manuella eller explicita kompileringen är användbar för långa och invecklade program.
39) Utför en webbläsaromdirigering från en JSP-sida.
<% response.sendRedirect(URL); %>
eller så kan vi ändra platsen för HTTP-rubrikattributet enligt följande:
<% response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); response.setHeader(URL); %>
40) Ge användningsområden för objektkloning.
Objektkloning används för att skapa en exakt kopia av ett objekt genom att skriva samma kod eller använda olika andra tekniker.
41) Hur man vidarebefordrar en förfrågan till en annan källa.
<jsp:forward page="/Page2.jsp" />
42) Hur kan automatiskt skapande av session förhindras på en JSP-sida?
JSP-sida skapar automatiskt sessioner för förfrågningar. Genom att skriva följande kan det undvikas.
<%@ page session=”false” %>
43) Hur kan du undvika scriptlet-kod i JSP?
JavaBönor eller anpassade taggar kan användas istället för skriptkod.
44) Förklara metoden jspDestroy().
Närhelst en JSP-sida är på väg att förstöras, anropar behållaren metoden jspDestroy() från javax.servlet.jsp.JspPage-gränssnittet. Servlets förstör metoder liknar den. Det kan enkelt åsidosättas för att utföra rensning, som när du stänger en databasanslutning.
45) Förklara handling.
Det är en åtgärd som används med inkludera eller vidarebefordra standardåtgärder. Det hjälper till att skicka parameternamn och värden till en resurs.
46) Förklara statisk metod.
En statisk metod är av klassen och inte föremålet för en klass. Den kan anropas utan instans av en klass. Statiska medlemmar kan också komma åt statiska data och ändra dess värde.
47) Hur inaktiverar man skript?
Skript kan enkelt inaktiveras genom att ställa in scripting-ogiltig element i distributionsbeskrivningen till true. Det är ett underelement av egenskapsgruppen. Det kan också vara falskt.
48) Definiera JSP-deklaration.
JSP-deklaration är taggar som används för att deklarera variabler. De är inneslutna i taggen <%!%>. De används för att deklarera funktioner och variabler.
<%@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) Hur kan HTML-utdata förhindras från att cachelagras?
<% response.setHeader("Cache-Control", "no=store"); response.setDateHeader("Expires", 0); %>
50) Hur är JSP bättre än Servlet-teknik?
JSP är en teknik på serverns sida för att göra innehållsgenerering enkelt. De är dokumentcentrerade, medan servlets är program. A Java serversidan kan innehålla fragment av Java program, som exekverar och instansierar Java klasser. Men de förekommer i HTML-mallfilen. Det tillhandahåller ramverket för utveckling av en webbapplikation.
Dessa intervjufrågor kommer också att hjälpa dig i din viva (orals)