Top 50 JSP Interviewspørgsmål & Svar

Anonim

Download PDF

1) Forklar JSP og fortælle dens anvendelser.

JSP står for Java Server Pages. Det er en præsentation lagteknologi uafhængig af platformen. Den leveres med SUNs J2EE-platforme. De er som HTML-sider, men med Java-kodestykker indlejret i dem. De gemmes med en .jsp-udvidelse. De kompileres ved hjælp af JSP-kompilator i baggrunden og genererer en Servlet fra siden.

2) Hvad er kravet til et tagbibliotek?

En samling af brugerdefinerede tags kaldes et tagbibliotek. Tilbagevendende opgaver håndteres lettere og genbruges på tværs af flere applikationer for at øge produktiviteten. De bruges af designere af webapplikationer, der fokuserer på præsentation i stedet for at få adgang til database eller andre tjenester. Nogle populære biblioteker er String tag-bibliotek og Apache display-tag-bibliotek.

3) Forklar JSP-teknologi.

JSP er en standardudvidelse af Java og er defineret oven på Servlet-udvidelser. Dets mål er at forenkle styring og oprettelse af dynamiske websider. Det er platformuafhængigt, sikkert, og det bruger Java som serversprog til serverside.

4) Forklar implicitte objekter i JSP.

Objekter oprettet af webcontainer og indeholder oplysninger om en bestemt anmodning, applikation eller side kaldes implicitte objekter. De er :

  • respons
  • undtagelse
  • Ansøgning
  • anmodning
  • session
  • side
  • ud
  • config
  • pageContext

5) Hvordan kan flere indsendelser på grund af klik på opdateringsknapper forhindres?

Ved hjælp af et Post / Redirect / Get eller et PRG-mønster kan dette problem løses.

1) En formular udfyldt af brugeren sendes til serveren ved hjælp af POST- eller GET-metoden. Tilstanden i databasen og forretningsmodellen opdateres.

2) Et omdirigeringssvar bruges til at svare af servlet til en visningsside.

3) En visning indlæses af browseren ved hjælp af GET-kommandoen, og der sendes ingen brugerdata. Dette er sikkert fra flere indsendelser, da det er en separat JSP-side.

6) Er JSP-teknologi udvidelig?

Ja, JSP kan let udvides ved brug og ændring af tags eller tilpassede handlinger, indkapslet i tagbiblioteker.

7) Skel mellem respons.sendRedirect (url) og

...>.

element videresender anmodningsobjektet fra 1 JSP-fil til en anden. Målfilen kan være HTML, servlet eller en anden JSP-fil, men den skal være i samme applikationskontekst som videresendelse af JSP-fil.

sendRedirect send HTTP midlertidig omdirigering svar til browseren. Browseren opretter derefter en ny anmodning om den omdirigerede side. Det dræber sessionsvariablerne.

8) Kan man få adgang til en efterfølgende anmodning med ens servletkode, hvis en anmodningsattribut allerede er sendt i hans JSP?

Anmodningen går uden for anvendelsesområdet, og den kan således ikke tilgås. Men hvis en anmodningsattribut er angivet i ens servlet, kan den fås i hans JSP.

En JSP er en komponent på serversiden, og siden oversættes til en Java-servlet og udføres derefter. Kun HTML-kode angives som output.

9) Hvordan inkluderes statiske filer på en JSP-side?

Statiske sider medtages altid ved hjælp af JSP inkluderer direktivet. På denne måde udføres inkluderingen i oversættelsesfasen en gang. Bemærk, at der skal angives en relativ URL til filattribut. Selvom statiske ressourcer kan medtages, foretrækkes det ikke, da hver anmodning kræver inkludering.

10) Hvorfor har JComponent tilføjet () og fjern () metoder, men komponent ikke?

JComponent er en underklasse af Container. Den indeholder andre komponenter og JComponents.

11) Hvordan kan en trådsikker JSP-side implementeres?

Det kan gøres ved at få dem implementeret af SingleThreadModel Interface. Tilføj <% @ side isThreadSafe = ”false”%> direktiv på JSP-siden.

12) Hvordan kan output fra JSP eller servlet-side forhindres i at blive cachelagret af browseren?

Brug af passende HTTP-headerattributter til at forhindre, at det dynamiske indholdsoutput fra en JSP-side caches af browseren.

13) Hvordan begrænses sidefejl, der vises på en JSP-side?

Ved at indstille en "ErrorPage" -attribut for PAGE-biblioteket til navnet på fejlsiden på JSP-siden og derefter i fejlen jsp-sidesættet "isErrorpage =" TRUE "kan fejl forhindres i at blive vist.

14) Hvad er JSP-handlinger?

De er XML-tags, der leder serveren til at bruge eksisterende komponenter eller styre opførsel af JSP Engine. De består af et typisk præfiks af "jsp: og handlingsnavn.

15) Skel mellem og <% @ include file = ...>.

Begge disse tags indeholder information fra 1 side til en anden.

Det første mærke fungerer som et funktionsopkald mellem to Jsp'er. Det udføres hver gang klientsiden åbnes af klienten. Det er nyttigt at modulere webapplikationen. Nyt indhold er inkluderet i output.

Det andet tagindhold i filen er tekstindlejret med lignende direktiv. Det ændrede indhold er ikke inkluderet i output. Det er nyttigt, når flere jsp'er kræver kode fra en jsp.

16) Kan konstruktør bruges i stedet for init () til at initialisere servlet?

Ja, det er muligt. Men det foretrækkes ikke, fordi init () blev udviklet, fordi tidligere Java-versioner ikke kunne påkalde konstruktører med argumenter dynamisk. Så de kunne ikke tildele en servletConfig. I dag kalder servletcontainere dog stadig kun no-arg konstruktør. Så der er ingen adgang til servletContext eller servletConfig.

17) Forklar livscyklusmetoder. 1)

jsplnit () : Containeren kalder dette for at initialisere servletforekomsten. Det kaldes kun en gang til servlet-forekomsten og gik forud for hver anden metode. 2)

_jspService () : Containeren kalder dette for hver anmodning og sender den videre til objekterne. 3)

jspDestroy () : Det kaldes af containeren lige før ødelæggelsen af ​​forekomsten.

18) Forklar JSP-outputkommentarer?

De er kommentarer, der kan ses i HTML-kildefil.

19) Definer udtryk

Udtryksmærke bruges til at indsætte Java-værdier direkte i output. Dens syntaks er

<% = udtryk%>

Den indeholder et scriptings sprogudtryk, der evalueres, derefter konverteres til en streng og derefter indsættes, hvor udtrykket kommer i JSP-fil.

20) Definer sammensætning.

Komposition har et stærkere forhold til objektet end Aggregation.

21) Definer JSP Scriptlet.

Det er et JSP-tag, der omslutter Java-kode på JSP-sider. Deres syntaks er <%%>. Kode skrevet i scriptlet udføres hver gang programmet køres.

22) Hvordan kan oplysninger fra en JSP videregives til en anden JSP?

Tagget giver os mulighed for at videregive oplysninger mellem flere Jsp'er.

23) Forklar anvendelsen af ​​ tag.

id="beanInstName"scope= "page | application"class="ABC.class" type="ABC.class"

Dette tag opretter en forekomst af Java-bønner. Det forsøger først at finde ud af, om bønneinstans allerede findes, og tildele lagre en reference i variablen. Type er også specificeret; ellers instantieres det fra den angivne klasse, der lagrer en reference i den nye variabel.

24) Forklar håndtering af undtagelser fra runtime.

Errorpage-attribut bruges til at få adgang til undtagelser for kørselstider, der automatisk videresendes til en fejlbehandlingsside.

Det omdirigerer browseren til JSP-sidefejl.jsp, hvis der ses nogen ufanget undtagelse under anmodningshåndtering. Det er en fejlbehandlingsside.

25) Hvorfor starter _jspService () med et '_', men andre livscyklusmetoder ikke?

Uanset hvilket indhold der er lavet på en jsp-side, kommer containeren ind i _jspService () -metoden. Hvis det tilsidesættes, giver compileren en fejl, men de andre 2 livscyklusser kan let tilsidesættes. Så '_' viser, at vi ikke kan tilsidesætte denne metode.

26) Forklar de forskellige omfangsværdier for tag.

tag bruges til at bruge ethvert java-objekt på jsp-siden. Nogle omfangsværdier er:

1) ansøgning

2) anmodning

3) side

4) session

27) Vis de 2 typer kommentarer i JSP.

De to typer er:

<%-JSP Comment-%>

28) Kan statisk metode tilsidesættes?

Vi kan erklære statiske metoder med samme signatur i underklasse, men det betragtes ikke som overordnet, da der ikke vil være nogen polymorfisme i løbetid. Derfor er svaret 'Nej'.

29) Forklar JSP-direktiver.

JSP-direktiver er meddelelser til JSP Engine. De fungerer som en besked fra side til container og styrer behandlingen af ​​hele siden. De kan indstille globale værdier som klassedeklaration. De producerer ikke output og er lukket i <% @….%>

30) Forklar pge-direktiver.

Sidedirektiver informerer JSP-motoren om overskrifter og faciliteter, som siden modtager fra miljøet. Det findes øverst på alle JSP-sider. Dens syntaks er <% @ page attribute = ”value”>

31) Vis attributter for sidedirektiver.

1) Session: Det viser, om en sessionsdata er tilgængelig på siden.

2) Import: det viser pakker, der importeres.

3) isELIgnored: Det viser, om EL-udtryk ignoreres, når JSP oversættes til en servlet.

4) contentType: det giver brugeren mulighed for at specificere sidens indholdstype.

32) Hvad er inkluderingsdirektivet?

Inkluderingsdirektivet indsætter statisk indholdet af en ressource i den aktuelle JSP. Det hjælper med genbrug af kode uden duplikering. og inkluderer indholdet af filen på oversættelsestidspunktet. Dens syntaks er som følger <% @ include file = ”Filnavn”%>.

33) Hvad er standardhandlinger i JSP?

De påvirker den samlede runtime-opførsel af en side og svar sendt til klienten. De bruges til at inkludere en fil på anmodningstidspunktet, til at starte en JavaBean eller finde en. De bruges også til at generere en browserspecifik kode eller videresende en anmodning til en ny side.

34) Forklar jsp: setProperty-handling.

Det bruges til at give værdier til egenskaber for bønner, der er henvist til på forhånd.

...

jsp: setproperty udføres, selvom en ny bønne instantieres, eller der findes en eksisterende bønne.

Ved at tilføje i slutningen af ​​koden er betingelsen for udførelse inverteret, dvs. det udføres ikke, hvis eksisterende objekt blev fundet, og kun hvis et nyt objekt blev instantificeret.

35) Definer statisk blok.

Det bruges til at starte det statiske data-medlem. Det udføres før klasseindlæsning.

36) Forklar jsp: plugin-handling.

Denne handling hjælper med at indsætte et bestemt objekt i browseren eller integrere det nødvendige element for at specificere kørslen af ​​applet ved hjælp af Java-plugin.

37) Forklar validering af klient og serverside.

Javascript bruges til validering af klientsiden. Det finder sted i browseren. Javascript bruges til at indsende formulardata, hvis validering er vellykket. Valideringsfejl kræver ingen ekstra netværksrejse, da formular ikke kan indsendes.

Validering udføres også på serveren efter indsendelse. Hvis validering mislykkes, kræves der ekstra netværksrejse for at sende formularen igen til klienten.

38) Hvad er oversættelsesfasen?

JSP-motor oversætter og kompilerer en JSP-fil til en servlet. Denne servlet flytter til udførelsesfasen, hvor anmodninger og svar håndteres. De kompileres for første gang, de åbnes, medmindre de kompileres manuelt på forhånd. Den manuelle eller eksplicitte kompilering er nyttig til lange og indviklede programmer.

39) Udfør en browseromdirigering fra en JSP-side.

<% response.sendRedirect(URL); %>

eller vi kan ændre placeringen af ​​HTTP-headerattributten som følger:

<% response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); response.setHeader(URL); %>

40) Giv anvendelser af objektkloning.

Objektkloning bruges til at oprette en nøjagtig kopi af et objekt ved at skrive den samme kode eller ved hjælp af forskellige andre teknikker.

41) Sådan videresendes en anmodning til en anden kilde.

42) Hvordan kan automatisk oprettelse af session forhindres på en JSP-side?

JSP-siden opretter automatisk sessioner til anmodninger. Ved at skrive følgende kan det undgås.

<%@ page session=”false” %>

43) Hvordan kan du undgå scriptlet-kode i JSP?

JavaBeans eller brugerdefinerede tags kan bruges i stedet for scriptlet-kode.

44) Forklar metoden jspDestroy ().

Hver gang en JSP-side er ved at blive ødelagt, påberåber containeren metoden jspDestroy () fra grænsefladen javax.servlet.jsp.JspPage. Servlets ødelægger metoder ligner det. Det kan let tilsidesættes for at udføre oprydning, som når du lukker en databaseforbindelse.

45) Forklar handlingen .

Det er en handling, der bruges med inkludere eller videresende standardhandlinger. Det hjælper med at videregive parameternavne og værdier til en ressource.

46) Forklar den statiske metode.

En statisk metode er af klassen og ikke genstand for en klasse. Det kan påberåbes uden forekomst af en klasse. Statiske medlemmer kan også få adgang til de statiske data og ændre deres værdi.

47) Hvordan deaktiveres scripting?

Scripting kan let deaktiveres ved at indstille scripting-ugyldigt element i installationsbeskrivelsen til sand. Det er et underelement af ejendomsgruppen. Det kan også være falsk.

48) Definer JSP-erklæring.

JSP-erklæring er tags, der bruges til at deklarere variabler. De er omsluttet af <%!%> Tag. De bruges til at erklære funktioner og variabler.

<%@page contentType=”text/html” %><%!int a=0;private int getCount(){a++;return a;}%>

Values of a are:

<%=getCount()%>

49) Hvordan kan HTML-output forhindres i at blive cache?

<%response.setHeader("Cache-Control", "no=store");response.setDateHeader("Expires", 0);%>

50) Hvordan er JSP bedre end Servlet-teknologi?

JSP er en teknologi på serversiden, der gør generering af indhold enkel. De er dokumentcentrerede, mens servlets er programmer. En Java-serverside kan indeholde fragmenter af Java-program, der udfører og instantierer Java-klasser. De forekommer dog inde i HTML-skabelonfil. Det giver rammen for udvikling af en webapplikation.