Servlet-Lebenszyklus

In diesem Lernprogramm erhalten Sie einen Überblick über Java-Servlets und deren Lebenszyklus. Bevor wir mit dem Servlet-Lebenszyklus beginnen, wollen wir uns zunächst einen Überblick darüber verschaffen, was genau ein Servlet und sein Prozess ist.

Was ist ein Servlet?

Java Servlet ist eine Klasse in der Programmiersprache Java, die in Java Enterprise Edition, auch Java EE genannt, definiert ist. Es wurde von Sun Microsystems im Jahr 1997 entwickelt. Nach der ersten Version 1.0 von Servlet, die im Jahr 1997 veröffentlicht wurde, wurden viele neue Versionen veröffentlicht, zuletzt Servlet 4.0.

Die Servlet-Technologie ist beim Erstellen von Webanwendungen sehr nützlich, da sie dynamische Webseiten generiert, während sie sich auf der Serverseite befindet. Java-Servlets ersetzten CGI oder Common Gateway Interface, eine Skriptsprache, die üblicherweise als serverseitige Programmiersprache verwendet wird.

Servlet ist plattformunabhängig, robust und kann auf alle Java-APIs wie die JDBC-API (Java Database Connectivity) zugreifen, um auf die Datenbanken eines Unternehmens zuzugreifen.

Java Servlet wird zum Erstellen von Webanwendungen verwendet, die dynamischer Natur sind. Zu diesem Zweck wird die Serverfähigkeit erweitert. Es kann auf jedem Webserver ausgeführt werden, auf dem ein Servlet-Container integriert ist.

Der Java-Servlet-Prozess kann anhand der folgenden Schritte leicht verstanden werden:

  1. Der Client sendet eine Anfrage an einen Servlet-Container. Der Client bezieht sich hier auf alle verwendeten Browser wie Chrome, IE, Mozilla usw.
  2. Der Container oder der Webserver sucht nach dem Servlet. Sobald der Server das Servlet findet, initiiert er das Servlet.
  3. Das Servlet verarbeitet nun die Client-Anfrage und sendet eine Antwort an den Server zurück.
  4. Diese Antwort wird vom Server an den Client gesendet.

Bevor wir zum Lebenszyklus eines Servlets übergehen, sollten Sie sich mit den bisher in diesem Artikel verwendeten Begriffen vertraut machen. Dies ist hilfreich, um den Servlet-Lebenszyklus zu verstehen.

  1. Webserver : Der Webserver oder HTTP-Server verarbeitet HTTP-Anforderungen und HTTP-Antworten. Die von Clients gesendeten Anforderungen werden verarbeitet und eine Antwort wird basierend auf der von diesem Server gesendeten Anforderung gesendet.
  2. Web Container : Web Container oder Servlet Container oder Servlet Engine interagieren mit den Servlets. Es ist eine wichtige Komponente eines Webservers, da es den Lebenszyklus eines Servlets verwaltet.

Lebenszyklus von Servlet

Sie können den Lebenszyklus eines Servlets als eine Abfolge von Schritten verstehen, die ein Servlet in seiner Lebensspanne durchläuft, beginnend von seiner Initiierung bis zur Zerstörung. Die Servlet-Engine verwaltet den Lebenszyklus des Servlets wie oben beschrieben.

Der Lebenszyklus eines Servlets kann in den folgenden fünf Punkten zusammengefasst werden:

  1. Die Servlet-Klasse wird geladen.
  2. Die Servlet-Instanz wird erstellt
  3. Die Methode init () wird aufgerufen, um das Servlet zu initialisieren.
  4. Die service () -Methode wird für jede eingegangene Clientanforderung wiederholt aufgerufen.
  5. Das Servlet wird mit der destroy () -Methode zerstört.

Hinweis: Objekte werden auch als Instanzen bezeichnet.

1) Laden der Servlet-Klasse

Die Servlet-Klasse wird mit Hilfe von Classloader geladen. Sobald die Anforderung für ein Servlet vom Webcontainer empfangen wird, wird die Servlet-Klasse geladen.

2) Erstellen einer Servlet-Klasseninstanz

Eine Instanz des Servlets wird vom Web-Container erstellt, sobald die Servlet-Klasse geladen wird. Beachten Sie, dass die Erstellung einer Servlet-Instanz für jedes Servlet nur einmal im Leben stattfindet. Dies bedeutet, dass sie im Lebenszyklus des Servlets nur einmal instanziiert wird.

3) Aufruf der Init () -Methode

Nachdem die Servlet-Instanz erstellt wurde, besteht die Aufgabe des Webcontainers darin, die Methode init () aufzurufen. Die Methode init () wird nur einmal aufgerufen und initialisiert das Servlet. Wenn ein Benutzer ein Servlet aufruft, wird nur eine Instanz dieses Servlets erstellt. Jede einzelne Anfrage führt zur Erzeugung eines neuen Threads. Die durch Aufrufen der Methode init () erstellten oder geladenen Daten bleiben während der gesamten Lebensdauer des Servlets erhalten.

Beachten Sie, dass die Methode init () während der gesamten Lebensdauer des Servlets nur einmal aufgerufen wird.

Die unten angegebene Syntax ruft die init-Methode auf -

public void init () löst eine ServletException aus

(

// Code

)

4) Aufrufen der Service () -Methode

Die service () -Methode ist eine wichtige Methode, die jedes Mal aufgerufen wird, wenn eine Anforderung für das Servlet eingeht. Der Webcontainer ist die Komponente, die die service () -Methode aufruft, um eine echte Arbeit auszuführen, dh vom Client-Browser gesendete Anforderungen zu empfangen und durch Senden einer entsprechenden Antwort an den Client zu verarbeiten. Bei der Initialisierung des Servlets wird die Dienstmethode aufgerufen und alle HTTP-Anforderungstypen wie GET, POST, PUT, DELETE usw. analysiert. Nachdem die Anforderungstypen bekannt sind, sendet die service () -Methode die Anforderung an ihren Handler Methode auf dieser Basis.

Betrachten Sie den Fall einer POST-Anforderung des Clients. Die Aufgabe der service () -Methode besteht darin, die doPost () -Methode aufzurufen und die Anforderung an sie zu senden. Alle Anforderungen verfügen über eine eigene Handler-Methode, die von der service () -Methode basierend auf dem Typ der Anforderung aufgerufen wird. Zum Abrufen einer Ausnahme gibt es beispielsweise die doGet () - Handlermethode, für Put die doPut () - Methode und so weiter.

Beachten Sie, dass die service () -Methode jedes Mal aufgerufen wird, wenn eine Clientanforderung auftritt. Dies bedeutet, dass die service () -Methode im Gegensatz zur init () - und destroy () -Methode während des Servlet-Lebenszyklus unzählige Male aufgerufen werden kann.

Die folgende Syntax ruft die service () -Methode für Servlet auf:

public void service (ServletRequest req, ServletResponse-Antwort) löst IOException, ServletException aus

(

//Code

)

5) Aufrufen einer Destroy () -Methode

Beim Herunterfahren des Webservers erhält das Servlet die Möglichkeit, alle erstellten Servlets zu entladen. Die destroy () -Methode entfernt alle initialisierten Servlets und räumt so den Speicher auf.

Die Syntax dafür lautet:

öffentliche Leere zerstören ()

Empfohlene Artikel

Dies war ein Leitfaden für den Servlet-Lebenszyklus. Hier haben wir die Schritte der Reihe nach besprochen, die ein Servlet in seiner Lebensspanne durchläuft, angefangen von seiner Initiation bis hin zur Zerstörung. Sie können auch unsere anderen Artikelvorschläge durchgehen, um mehr zu erfahren -

  1. Fragen in Vorstellungsgesprächen bei Java Servlet
  2. Fragen in Vorstellungsgesprächen bei Servlet
  3. Was ist Cybersicherheit?
  4. Was ist SQL Server?