Servlet-Programm in Java: Servlet-Tutorial für Anfänger [2022]
Veröffentlicht: 2021-01-02Inhaltsverzeichnis
Java-Servlet
Es ist eine Java-Programmiersprachenklasse. Das Servlet-Programm in Java wird auf der Java-fähigen Webanwendung oder dem Java-Server ausgeführt und verwendet, um vom Webserver empfangene Anfragen zu verarbeiten, die Antwort auf die Anfrage zu verarbeiten und zu produzieren und die Antwort dann an den Webserver zurückzusenden.
Diese Servlets arbeiten serverseitig. Es wird verwendet, um Serverfunktionen zu erweitern, um Anwendungen zu hosten, um Anfrage-Antwort-Modelle in der Programmierung zu hosten. Es kann jede Art von Anfrage verarbeiten und ist in der Lage, komplexe Anfragen effizient zu bearbeiten.
Lesen Sie: Fragen und Antworten zu Java-Interviews
Servlet-Programme, die mit Java eingesetzt werden, verlassen sich nicht auf die Plattform. Es erstellt Prozesse abhängig von der Art der Client-Anfrage, die es erhält. Es läuft auf JVM ( Java Virtual Machine ). Das Java-Servlet-Programm entspricht dem Java-Bytecode. Java Servlet ist in der Lage, Angriffen zu widerstehen. Weitere Vorteile sind höhere Geschwindigkeit, Portabilität und Effizienz.
Es übersetzt und kompiliert Skripte, bevor es sie verarbeitet. Java Servlet ermöglicht die gemeinsame Nutzung von Daten. Es kann direkt mit dem Webserver kommunizieren und die Cookies verarbeiten. Es ist weniger teuer als andere Methoden wie CGI ( Common Gateway Interface ) .
Java-Servlet-Architektur
Die Java-Servlet-Architektur umfasst eine Kommunikationsschnittstelle, Client- und Serveranforderungen, das verwendete Protokoll und die beteiligte Programmiersprache und Software.

Das Java-Servlet liest vom Client-Browser empfangene Daten, die in beliebiger Form vorliegen können, z. B. HTML (Hypertext Markup Language), ein benutzerdefiniertes HTTP-Programm (Hypertext Transfer Protocol), ein Applet oder implizite HTTP-Anforderungsdaten. Dann verarbeitet es empfangene Daten, indem es mit einer bestehenden Datenbank kommuniziert, und führt andere Schritte aus, bevor es die Ergebnisse generiert.
Dieses Ergebnis (Daten oder Dokument) wird in verschiedenen Formaten wie Text (HTML oder XML (Extensible Markup Language)), Bild (binär) an die Clients gesendet. Am Ende sendet es eine implizite HTTP-Antwort an den Client, um ihn über den Typ des zurückgegebenen Dokuments zu informieren.
Phasen des Java-Servlet-Lebenszyklus
Das Java-Servlet hat einen Lebenszyklus aus vier Phasen, der das Laden des Servlets, das Initialisieren des Servlets, das Bearbeiten einer Anfrage und das Zerstören des Servlets umfasst. Der Servlet-Container stellt alle empfangenen Servlets bereit und lädt sie, wenn der Webserver gestartet wird.
Es initialisiert das Servlet, indem es die Methode von int() aufruft . Die erfolgreiche Instantiierung der Servlet-Instanz und ihre Dienstanzeige werden durch Aufrufen der Methode Servlet.init() angezeigt . Die Anfrage des Clients wird vom Servlet mit der Methode service() verarbeitet. Die Client-Anfrage wird dem Servlet unter Verwendung dieser Methode mitgeteilt.
Schließlich wird dieses erstellte Servlet beendet, indem Destroy() als Signal für das Ende der Servlet-Instanz aufgerufen wird. Die int()- und destrue()-Methoden werden einmal in der Lebensdauer eines Java-Servlets aufgerufen. Schließlich sammelt der JVM-Garbage Collector den Servlet-Garbage und schließt den Lebenszyklus eines Servlets ab.
Lesen Sie auch: Erklärung der Java-Architektur und -Komponenten
Ausführungsschritte von Java Servlets
Servlets werden in sechs grundlegenden Schritten ausgeführt, wie unten angegeben:
- Der Client sendet die Anfrage an die Webanwendung/den Server.
- Die Webanwendung/der Server empfängt die Anfrage.
- Die Webanwendung/der Server sendet die Anforderung an das entsprechende Servlet.
- Das Servlet verarbeitet die Anfrage während ihres gesamten Lebenszyklus und generiert eine Antwort als Ausgabe.
- Das Servlet sendet die Antwort zurück an die Webanwendung/den Server.
- Zuletzt sendet die Webanwendung/der Server diese Anfrage zurück an den Client, und der Browser des Clients zeigt sie auf der Webseite an.
Melden Sie sich für Online-Softwareentwicklungskurse von den besten Universitäten der Welt an. Verdienen Sie Executive PG-Programme, Advanced Certificate-Programme oder Master-Programme, um Ihre Karriere zu beschleunigen.
Java-Servlet-Klassen und -Schnittstellen
Obwohl das Java-Servlet dynamische Webseiten erstellen kann, wird diese Funktion Webseiten von einem Container oder Webserver bereitgestellt. Unabhängige Webserver-Anbieter bieten proprietäre Lösungen wie APIs (Application Programming Interface) an, um diese Anforderung zu erfüllen.

Mit diesen APIs kann man Programme mit einem Webserver erstellen und ausführen. Java Servlet ist die Java Platform Enterprise Edition, eine der Komponenten-APIs, die Standards für in Java erstellte dynamische Webanwendungen setzt.
Java Servlet API hat zwei wichtige Pakete, um alle wichtigen Schnittstellen und Klassen zu kapseln, wie unten angegeben:

- javax.servlet (Basic)
- Javax.servlet.http (Erweitert)
Die folgende Tabelle enthält einige wichtige Klassen und Schnittstellen von Java Servlets.
Servlet | Art | Paket | Deklaration der LifeCycle-Methoden des Servlets |
ServletConfig | Schnittstelle | javax.servlet | Es ermöglicht dem Servlet Initialisierungsmethoden |
ServletContext | Klasse | javax.servlet | Es ermöglicht dem Servlet, den Zugriff und die Zugriffsinformationen zu protokollieren |
ServletRequest | Schnittstelle | javax.servlet | Es wird verwendet, um die Daten aus der Client-Anfrage zu lesen |
ServletResponse | Schnittstelle | javax.servlet | Es wird verwendet, um die Daten in die Antwort des Clients zu schreiben |
GenericServlet | Klasse | javax.servlet | Es implementiert das Servlet und die Servlet.config-Schnittstelle |
ServletInputStream | Klasse | javax.servlet | Es stellt den Eingabestrom zum Lesen von Anforderungen bereit, die vom Client empfangen werden |
ServletOutputStream | Klasse | javax.servlet | Es stellt einen Ausgabestrom bereit, um Antworten an den Client zu schreiben |
ServletException | Klasse | javax.servlet | Der Hinweis auf die Nichtverfügbarkeit des Servlets |
HttpServlet | Schnittstelle | javax.servlet.http | Die Methoden zur Behandlung von HTTP Request & Response |
Der Servlet-Container
Es ist ein integrierter Satz von Objekten, der eine Laufzeitumgebung für Java-Servlet-Komponenten bereitstellt. Es bietet Dienste wie Netzwerk, Dekodierung und Kodierung von MIME ( Multipurpose Internet Mail Extensions )-basierten Nachrichten, Servlet-Containerverwaltung, Ressourcen- und Sitzungsverwaltung und Sicherheitsdienste.
Muss gelesen werden: Interessante Java-Projekte und -Themen
Fazit
Daher werden Java-Servlets verwendet, um dynamische Webseiten zusammen mit erhöhter Geschwindigkeit und Flexibilität zu erreichen, während Client-Anforderungen auf dem Webserver verarbeitet werden.
Wenn Sie mehr über Java, OOPs und Full-Stack-Softwareentwicklung erfahren möchten, schauen Sie sich das Executive PG-Programm in Full-Stack-Softwareentwicklung von upGrad & IIIT-B an, das für Berufstätige konzipiert ist und mehr als 500 Stunden strenge Schulungen bietet. Über 9 Projekte und Aufgaben, IIIT-B-Alumni-Status, praktische praktische Abschlussprojekte und Arbeitsunterstützung bei Top-Unternehmen.
Was ist java?
Java als Programmiersprache ist eine Allzweck-Computerprogrammiersprache, die simultan, klassenbasiert und objektorientiert ist. Das Ziel der Entwicklung der Java-Sprache ist es, Implementierungsbeschränkungen so weit wie möglich zu minimieren. Das Write Once, Run Anywhere (WORA)-Konzept regelt die Java-Programmiersprache, was impliziert, dass einmal erstellter Code auf jeder Java-kompatiblen Plattform ausgeführt werden kann, ohne dass er neu geschrieben werden muss. Java ist eine statisch typisierte Programmiersprache, die für die Webentwicklung, Unternehmensanwendungen, die Android-Entwicklung und das Internet der Dinge (IoT) verwendet wird.
Welche Vorteile hat ein Java Servlet gegenüber gängigen Gateway-Schnittstellen?
Gegenüber dem Common Gateway Interface haben Java Servlets deutliche Vorteile (CGI). Der erste und wichtigste Vorteil von Servlet gegenüber CGI ist, dass Servlet eine viel bessere Leistung als CGI hat. Anders als bei CGI ist es nicht erforderlich, für jede Client-Anfrage einen eigenen Prozess aufzubauen. Servlets werden ausschließlich innerhalb des Adressraums eines Webservers ausgeführt. Da Servlets in Java erstellt werden, sind sie unabhängige Plattformen. Der Java-Sicherheitsmanager auf dem Server legt eine Reihe von Einschränkungen fest, um die Ressourcen des Servers zu schützen. Folglich kann Servlets vertraut werden. Ein Servlet hat Zugriff auf die gesamte Leistungsfähigkeit der Java-Klassenbibliotheken, während CGIs keinen Zugriff auf ganze Bibliotheken haben.
Was sind die realen Anwendungsfälle von Servlets?
Servlets werden hauptsächlich in HTML und HTTP verwendet. Sie werden verwendet, um explizit von Browsern gesendete Daten zu lesen. Dies kann in Form eines HTML-Formulars auf einer Webseite, einer Anwendung oder einer maßgeschneiderten HTTP-Client-Software erfolgen. Sie können auch auf die impliziten HTTP-Anfragedaten der Browser zugreifen. Diese enthält unter anderem vom Browser unterstützte Cookies, Medienarten und Komprimierungsalgorithmen. Sie sind diejenigen, die die Daten verarbeiten und zu den Ergebnissen kommen. Bei diesem Verfahren kann es erforderlich sein, mit einer Datenbank zu sprechen, einen RMI- oder CORBA-Anruf durchzuführen, einen Webdienst zu kontaktieren oder die Antwort direkt zu berechnen. Sie werden auch verwendet, um explizite Daten wie Dokumente an Browser zu liefern. Dieses Dokument kann in verschiedenen Formen bereitgestellt werden, einschließlich Text, Binärdateien, Bildern, Excel usw.