30 top servlet interview questions
Meest gestelde vragen en antwoorden over Servlet-sollicitatiegesprekken om u te helpen bij de voorbereiding van een sollicitatiegesprek:
Deze serie Servlet-vragen leidt je door elk Servlet-interview.
Het bevat alles over wat Servlet is, waarom servlet in beeld kwam, levenscyclus van servlet en zijn methoden, laden bij opstarten, WAR-bestand, implementatiebeschrijving en zijn functie en welkomstbestand en het belang ervan.
We zullen ook leren hoe servlet werkt, Servlet Collaboration, Servlet-configuratie, Servlet-context, Sessie-tracking en technieken en voordelen, Gebeurtenissen, filter, het werkingsprincipe en het belang ervan.
De interviewer verwacht altijd een aantal real-time voorbeelden in uw antwoord die handig blijken te zijn in interviews. Dus als je al deze vragen grondig doorneemt en je kunt het in je eigen woorden uitleggen, dan kun je door een interview heen komen.
Beste Servlet interviewvragen
Hier is een korte lijst van enkele van de belangrijke vragen die in dit artikel worden behandeld:
- Wat is Servlet?
- Typen servlet
- Servlet levenscyclus
- Servlet Life Cycle-methoden
- Hoe Servlet werkt?
- WAR-bestand en het gebruik ervan?
- Wat is belasting bij opstarten en het belang ervan?
- Wat is de inzetdescriptor?
- Servlet Samenwerkingsprocedure
- Wat is RequestDispatcher?
- Wat zijn de SendRedirect-methode en het gebruik ervan?
- Over Servlet Config en Servlet Context
- Over het bijhouden van sessies en de bijbehorende technieken
- Cookies, verborgen formuliervelden, URL, enz
- Over evenementen
- Wat is filter en soorten filters?
Laten we beginnen met gedetailleerde antwoorden.
V # 1) Wat bedoel je met Servlet?
Antwoord: Servlet is een krachtig mechanisme dat wordt gebruikt om webtoepassingen te maken.
Het wordt bezet aan de serverzijde en helpt bij het genereren van dynamische webpagina's, het fungeert in feite als een bemiddelaar tussen het inkomende HTTP-verzoek van de browser en de database.
Servlet is gebaseerd op Java-taal, daarom is het robuust en wordt het een programmeertaal aan de serverzijde genoemd.
Het bovenstaande diagram legt de stroom van Servlet uit.
Een verzoek komt van de webpagina naar de servlet, servlet stuurt het verzoek om naar de juiste JSP-pagina en de JSP-pagina stuurt het antwoord als een resultaatpagina die zichtbaar is voor de gebruiker.
Aanbevolen literatuur = >> JSP Interview Vragen
Vraag 2) Wat is CGI en wat zijn de nadelen?
Antwoord: CGI staat voor Common Gateway Interface, een reeks codes die op de server is geschreven en die wordt gebruikt om via de webserver te communiceren met een client die op een webserver draait.
Het neemt het inkomende verzoek en start voor elk nieuw verzoek een nieuw proces.
Nadelen van Common Gateway Interface:
- Omdat het een nieuw proces creëert voor elk inkomend verzoek, zal de gegenereerde respons erg traag zijn als het aantal inkomende verzoeken is, wat op zijn beurt de efficiëntie vermindert.
- CGI is platformafhankelijk.
V # 3) Wat zijn de voordelen van Servlet ten opzichte van CGI?
hoe je een ddos-aanval verstuurt
Antwoord: De voordelen van de servlet zijn als volgt:
- Servlet maakt een thread voor elk inkomend verzoek en verwerkt niet, dus het is sneller.
- Servlet is platformonafhankelijk omdat het is gebaseerd op Java Programming Language.
- Omdat het op Java is gebaseerd, is het ook robuust en veilig.
V # 4) Hoe wordt een Servlet geïmplementeerd in code?
Antwoord: Servlet kan in code worden geïmplementeerd door simpelweg de Httpservlet of generieke servletklasse uit te breiden.
V # 5) Wat is het verschil tussen de Http-servlet en de generieke servlet?
Antwoord: Generic Servlet kan alle soorten verzoeken afhandelen. Omdat het een service () -methode heeft, is het onafhankelijk, terwijl Http Servlet de generieke servlet uitbreidt en de HTTP-methoden ondersteunt zoals doGet (), doPost (), doHead (), doTrace (), enz.
V # 6) Wat zijn de levenscyclusmethoden van de Servlet?
Antwoord: Er zijn in principe drie levenscyclusmethoden van een servlet.
Dit zijn:
- In het ()
- Onderhoud ()
- Vernietigen ()
Vraag 7) Leg de levenscyclus van Servlet uit.
Antwoord: De levenscyclus van een servlet wordt uitgelegd aan de hand van het onderstaande diagram.
- In eerste instantie wordt de Servlet-klasse geladen volgens het verzoek dat is ontvangen van de client.
- Vervolgens wordt het nieuwe exemplaar of object van een servlet gemaakt. Er wordt slechts één object gemaakt voor elke levenscyclus.
- Vervolgens wordt de methode Init (), die wordt gebruikt om de servlet te initialiseren, aangeroepen.
Syntaxis: openbare leegte Init ()
- De Service () - methode wordt elke keer aangeroepen wanneer een nieuw verzoek wordt ontvangen om bewerkingen uit te voeren.
Syntaxis: openbare ongeldige dienst ()
- Vervolgens wordt de vernietigingsmethode aangeroepen om de opschoningsoperatie uit te voeren.
Syntaxis: vernietigen ()
Servlet stroomschema
V # 8) Wat is een webcontainer en wat is zijn verantwoordelijkheid?
Antwoord: Een webcontainer wordt ook wel Servlet-container genoemd en wordt gebruikt om te communiceren met de Servlet en bevat alle Servlet-, JSP- en XML-bestanden erin. Webcontainer beheert de levenscyclus van een servlet en helpt bij het toewijzen van de URL aan een specifieke servlet. Webcontainer maakt het object van een servlet.
V # 9) Waarin verschilt de methode Get () van de methode Post ()?
Antwoord: De redenen waarom de methode Get () de voorkeur heeft boven de methode Post () worden hieronder gegeven.
Get () methode:
- Hier kan een specifieke hoeveelheid gegevens of informatie worden verzonden terwijl de gegevens door de koptekst worden verzonden.
- In de Get () - methode zijn de gegevens niet beveiligd omdat ze in de URL-balk aan de gebruiker worden getoond.
- Get () methode kan worden gemarkeerd als bladwijzer.
- Over het algemeen is de methode get () effectiever en wordt deze gebruikt boven de methode post ().
Post () methode:
- Hier kan een enorme hoeveelheid gegevens of informatie worden overgedragen terwijl de gegevens door het lichaam worden verzonden.
- Omdat de gegevens in de Post () - methode door de body worden verzonden, is deze beveiligd.
- De methode Post () kan geen bladwijzer bevatten.
- Over het algemeen is de Post () - methode minder effectief en wordt deze niet vaak gebruikt.
Vraag 10) Wat is Servlet-looping of chaining?
Antwoord: Servlet-looping is een proces waarbij de uitvoer van een servlet wordt gegeven als invoer voor een andere servlet en de laatste servlet-uitvoer wordt beschouwd als de daadwerkelijke uitvoer die aan de client wordt geleverd.
Dit proces wordt bereikt via de interface van de verzoekverzender.
Vraag 11) Hoe zullen twee of drie servlets met elkaar communiceren of communiceren?
Antwoord: Er zijn twee processen waarin de servlets met elkaar kunnen communiceren.
wat is een goede mp3-downloader
- Verzoek Dispatcher Interface
- Servlet Chaining
Q # 12) Leg de Request Dispatcher en zijn methoden uit.
Antwoord: Request Dispatcher maakt een object dat verantwoordelijk is voor het ontvangen van verzoeken van de browser of client en navigeert deze vervolgens naar bronnen zoals Servlets, JSP of HTML die zich aan de serverzijde bevinden.
Er zijn in principe twee methoden voor Request Dispatcher:
a) Forward () methode:
- Bij de methode Forward () verzendt de client het verzoek naar de Servlet1.
- De Servlet1 verwerkt het verzoek en stuurt het vervolgens door naar Servlet2.
- De servlet2 verwerkt het verzoek en genereert een antwoord dat op zijn beurt wordt teruggestuurd naar de cliënt als het laatste antwoord.
b) Inclusief () methode:
- In de include () -methode verzendt de client het verzoek naar de Servlet1.
- De Servlet1 verwerkt het verzoek, voegt vervolgens het verzoek toe en stuurt het verzoek naar Servlet2.
- De servlet2 verwerkt het verzoek en stuurt het opnieuw terug naar Servlet1 en
- De Servlet1 genereert een antwoord dat op zijn beurt wordt teruggestuurd naar de client als het laatste antwoord.
V # 13) Wat is het gebruik van de methode Send Redirect ()?
Antwoord: Send Redirect () -methode die aan de clientzijde werkt, wordt gebruikt om het antwoord om te leiden naar een andere bron zoals Servlet, JSP, HTML.
Syntaxis: ongeldig verzenden Redirect (URL);
Voorbeeld: response.sendredirect ('http://www.google.com');
V # 14) Hoe verschilt de methode Forward () van de methode Send Redirect ()?
Antwoord:
Forward () methode:
- Het wordt gebruikt om exact hetzelfde verzoek naar een andere bron te sturen.
- Het werkt aan de serverzijde binnen de server.
Send Redirect () -methode:
- Het stuurt altijd een nieuw verzoek naar de bronnen omdat het de URL gebruikt.
- Het werkt zowel aan de clientzijde als binnen de server.
V # 15) Leg het WAR-bestand uit?
Antwoord: Een WAR-bestand wordt in feite een Web Archived-bestand genoemd, waarin alle bestanden van uw applicatie, zoals XML, servlets, JSP, HTML, configuratiebestanden in één bestand zijn gecombineerd, zodat het implementeren van de applicatie eenvoudig en gemakkelijk zou zijn.
Het is raadzaam om een WAR-bestand te gebruiken voor implementatie.
V # 16) Wat bedoel je met Servlet Context?
Antwoord: Servlet Context wordt in feite een object genoemd dat informatie bevat over de applicatie en de webcontainer. Met Servlet-context kunnen we gebeurtenissen loggen, de URL van de specifieke bron ophalen en gemakkelijk de attributen opslaan zodat andere servlets deze kunnen gebruiken.
Het belangrijkste voordeel van Servlet is dat het gemakkelijk te onderhouden is en als bemiddelaar fungeert tussen de container en de servlet.
Er zijn enkele belangrijke methoden voor servlet-context die hieronder worden gegeven:
- getInitParameter () - retourneer de waarde van parameter.
- getInitParameterNames () - geeft de naam van de parameter terug.
- leegte setAttribute () - gebruikt om de waarden van attributen in te stellen.
- ongeldig getAttribute () - gebruikt om de waarden van attributen te krijgen.
- ongeldig removeAttribute () - gebruikt om het kenmerk te verwijderen.
V # 17) Wat zijn precies de functies van Servlet?
Antwoord: De functies van de servlets zijn als volgt:
- Ten eerste ontvangt Servlets het HTTP-verzoek dat vanaf de client wordt verzonden.
- Leest het verzoek en haalt de gegevens uit het verzoek.
- Na het extraheren van de informatie voeren de servlets een zakelijke logische bewerking uit door toegang te krijgen tot een database of door EJB's aan te roepen.
- Ten slotte genereert het een antwoord en stuurt het naar de klant in de vorm van HTTP of stuurt het antwoord naar de JSP-pagina.
V # 18) Wat bedoel je met een deployment descriptor?
Antwoord: WEB.XML is naar verluidt de plaatsingsdescriptor in een servlet.
Het is het toegangspunt voor elke toepassing en beschikt over de welkomstbestandlijst. Het definieert bronnen, informatie over welke servlet zal worden gebruikt en wijst de servlet toe aan URL.
V # 19) Leg het volgen van sessies en het belang ervan uit?
Antwoord: Sessietracking is een proces waarin de gegevens van de cliënt of gebruiker kunnen worden bijgehouden.
Elke keer dat er een nieuw verzoek bij de server binnenkomt, kan de server niet herkennen dat het nieuwe verzoek van dezelfde client komt, om te voorkomen dat dit probleem wordt gebruikt voor het volgen van sessies.
Session Tracking speelt een cruciale rol om de klant of het verzoek te herkennen.
V # 20) Wat zijn de verschillende technieken voor het bijhouden van sessies?
Antwoord:
Er zijn in principe vier soorten technieken die hieronder worden gegeven:
a) Cookies: Cookies zijn kleine informatie die wordt toegevoegd aan meerdere klantverzoeken.
Voorbeeld: Eén verzoek komt bij de server, de server voegt wat cookies toe bij het antwoord, nu wanneer dezelfde client het verzoek weer naar de server stuurt, herkent de server de gebruiker.
b) Verborgen formulierveld: Hier gebruiken we een verborgen tekstveld om de status van de gebruiker te behouden.
c) URL herschrijven: Hier geven we een extra link voor de volgende servlet die in kaart moet worden gebracht.
d) HTTP-sessie: Hier wordt voor elke gebruiker een specifieke ID gegenereerd, zodat een server de gebruiker kan herkennen.
V # 21) Wat zijn de Servlet-evenementen?
Antwoord: Gebeurtenissen zijn niets anders dan gebeurtenissen. Zelfs het veranderen van de toestand van het object is ook een gebeurtenis.
De gebeurtenisklassen en interface zijn als volgt:
- Klassen: ServletRequestEvent, ServletContextEvent, HttpSessionEvent enz.
- Interfaces: ServletRequestListner, ServletContextListner, HttpSessionListner enz.
V # 22) Wat bedoel je met een filter en hoe werkt het?
Antwoord: Filter wordt in feite gebruikt om dingen uit te filteren.
Op een vergelijkbare manier is Filter in servlet een object dat wordt geïntroduceerd bij de voorverwerking van het verzoek en na het verwerken van het verzoek. De belangrijkste functies zijn onder meer conversie, codering en decodering van waarden, invoervalidatie bij het vastleggen van gegevens van het IP-adres en het opslaan van alle inkomende verzoeken.
Een filter is gedefinieerd in web.xml en het kan worden verwijderd uit web.xml, zodat het niet nodig is om de servlet te wijzigen, wat resulteert in kostenbesparing.
Diagram van de werking van het servletfilter
V # 23) Leg de belasting bij het opstarten en het belang ervan uit?
Antwoord: Load on start-up is een element dat is gedefinieerd in web.xml (Deployment descriptor) dat helpt om de servlet te laden op het moment van implementatie terwijl de server opnieuw wordt opgestart.
De reden om belasting bij het opstarten te gebruiken, is dat de servlet wordt geladen bij het eerste ontvangen verzoek, dus het kost in eerste instantie meer tijd om te laden, resulterende verminderde efficiëntie als we definiëren dat lening bij opstarten is ladingen de servlet tijdens het herstarten van de server, wat de efficiëntie verhoogt.
Belasting bij opstarten werkt ook aan twee waarden:
- Positief (0,1,2,3….): De laagste positieve waarde wordt als eerste geladen.
- Negatief: De servlet wordt geladen wanneer het eerste verzoek is ontvangen.
V # 24) Is de servlet gesynchroniseerd?
Antwoord: Nee, de servlets zijn niet gesynchroniseerd. Als we de servlet gesynchroniseerd willen maken, moeten we SingleThreadInterface implementeren.
V # 25) Wat bedoel je met Scope Object en wat zijn de typen?
Antwoord: Scope-objecten helpen bij het delen van informatie tussen webcomponenten via setattribute () en getattribute ().
Typen Scope-objecten zijn:
- Webcontext
- Sessie
- Verzoek
- Bladzijde
V # 26) Waar verwijst de term lokalisatie naar?
hoe shockwave flash-object te spelen
Antwoord: Lokalisatie verwijst in feite naar de lokale traditie of taal die door de gebruiker wordt gevolgd. We voegen dus bronnen of elementen toe aan de specifieke website, zoals het toevoegen van de Hindi-taal, zodat elke gebruiker het kan begrijpen.
V # 27) Als servlet meerdere verzoeken ontvangt, hoeveel objecten zal het dan maken?
Antwoord: Servlet maakt slechts één instantie aan, ongeacht het aantal inkomende verzoeken.
V # 28) Wat is het belangrijkste verschil tussen Servlet en Applet?
Antwoord: Het belangrijkste verschil tussen Servlet en Applet is dat de Servlet zich aan de serverzijde bevindt, terwijl de applet zich aan de clientzijde in de webbrowser bevindt.
V # 29) Is het mogelijk om een constructor in de servlet te hebben?
Antwoord: Ja, het is mogelijk om een constructor in een servlet te definiëren, maar deze kan alleen worden aangeroepen door een Servlet-container en niet expliciet.
V # 30) Noem de pakketten die met Servlet werken?
Antwoord: Er zijn in principe twee pakketten die met Servlet werken, zoals hieronder weergegeven:
- Javax.servlet
- Javax.servlet.http
V # 31) Wat zijn de soorten HTTP-verzoeken?
Antwoord: Soorten HTTP-verzoeken zijn onder meer:
- Krijgen
- Post
- Hoofd
- Opties
- Zetten
- Spoor
- Verwijderen
V # 32) Wat is het belangrijkste verschil tussen contextparameter en contextkenmerk?
Antwoord: Het belangrijkste verschil tussen de twee is,
Contextparameter is een waarde die is opgeslagen in de implementatiedescriptor, d.w.z. web.xml, en wordt geladen tijdens het implementatieproces. Terwijl Context Attribute de waarden zijn die dynamisch worden ingesteld en in de hele applicatie kunnen worden gebruikt.
V # 33) Wat is het proces voor het ketenen van servlet?
Antwoord: Servlet chaining is een heel eenvoudig proces waarbij we de output van een servlet als input geven aan een andere servlet.
Ten eerste moeten we een RequestDispatcher maken voor een resource die moet worden geketend. Vervolgens moeten we indien nodig de attribuutwaarden voor het verzoek instellen. Vervolgens moeten we de methode forward () of de methode include () aanroepen voor een RequestDispatcher-object.
Ik weet zeker dat je een duidelijk beeld zou hebben gekregen van waar Servlet over gaat!
Wij wensen u veel succes !!
Aanbevolen literatuur
- Interview vragen en antwoorden
- Vragen en antwoorden over ETL-tests
- Top 30+ populaire komkommer interviewvragen en antwoorden
- Top 30 SAS interviewvragen en antwoorden
- Top 30 interviewvragen en antwoorden over beveiligingstests
- 30+ Top Scrum Interview Vragen en Antwoorden (2021 LIST)
- Top 30 DBMS interviewvragen en antwoorden
- 30 belangrijkste PL / SQL-interviewvragen en antwoorden in 2021