Servlets - Übersicht

Was sind Servlets?

Java-Servlets sind Programme, die auf einem Web- oder Anwendungsserver ausgeführt werden und als mittlere Schicht zwischen Anforderungen eines Webbrowsers oder eines anderen HTTP-Clients und Datenbanken oder Anwendungen auf dem HTTP-Server fungieren.

Mit Servlets können Sie Eingaben von Benutzern über Webseitenformulare sammeln, Datensätze aus einer Datenbank oder einer anderen Quelle präsentieren und Webseiten dynamisch erstellen.

Java-Servlets dienen häufig demselben Zweck wie Programme, die über das Common Gateway Interface (CGI) implementiert werden. Servlets bieten jedoch im Vergleich zum CGI mehrere Vorteile.

  • Die Leistung ist deutlich besser.

  • Servlets werden im Adressraum eines Webservers ausgeführt. Es ist nicht erforderlich, einen separaten Prozess für jede Clientanforderung zu erstellen.

  • Servlets sind plattformunabhängig, da sie in Java geschrieben sind.

  • Der Java-Sicherheitsmanager auf dem Server erzwingt eine Reihe von Einschränkungen, um die Ressourcen auf einem Server zu schützen. Servlets sind also vertrauenswürdig.

  • Die volle Funktionalität der Java-Klassenbibliotheken steht einem Servlet zur Verfügung. Es kann mit Applets, Datenbanken oder anderer Software über die Sockets und RMI-Mechanismen kommunizieren, die Sie bereits gesehen haben.

Servlet-Architektur

Das folgende Diagramm zeigt die Position von Servlets in einer Webanwendung.

Servlet-Aufgaben

Servlets führen die folgenden Hauptaufgaben aus:

  • Lesen Sie die expliziten Daten, die von den Clients (Browsern) gesendet wurden. Dies umfasst ein HTML-Formular auf einer Webseite oder kann auch von einem Applet oder einem benutzerdefinierten HTTP-Client-Programm stammen.

  • Lesen Sie die impliziten HTTP-Anforderungsdaten, die von den Clients (Browsern) gesendet wurden. Dies umfasst Cookies, Medientypen und Komprimierungsschemata, die der Browser versteht, und so weiter.

  • Verarbeiten Sie die Daten und generieren Sie die Ergebnisse. Für diesen Prozess muss möglicherweise mit einer Datenbank gesprochen, ein RMI- oder CORBA-Aufruf ausgeführt, ein Webdienst aufgerufen oder die Antwort direkt berechnet werden.

  • Senden Sie die expliziten Daten (dh das Dokument) an die Clients (Browser). Dieses Dokument kann in verschiedenen Formaten gesendet werden, darunter Text (HTML oder XML), Binärformate (GIF-Bilder), Excel usw.

  • Senden Sie die implizite HTTP-Antwort an die Clients (Browser). Dazu gehört, den Browsern oder anderen Clients mitzuteilen, welche Art von Dokument zurückgegeben wird (z. B. HTML), Cookies und Caching-Parameter festzulegen und andere solche Aufgaben auszuführen.

Servlet-Pakete

Java-Servlets sind Java-Klassen, die von einem Webserver ausgeführt werden, der über einen Interpreter verfügt, der die Java-Servlet-Spezifikation unterstützt.

Servlets können mit dem erstellt werden javax.servlet und javax.servlet.http Pakete, die ein Standardbestandteil der Enterprise Edition von Java sind, einer erweiterten Version der Java-Klassenbibliothek, die umfangreiche Entwicklungsprojekte unterstützt.

Diese Klassen implementieren die Java Servlet- und JSP-Spezifikationen. Zum Zeitpunkt des Schreibens dieses Tutorials sind die Versionen Java Servlet 2.5 und JSP 2.1.

Java-Servlets wurden wie jede andere Java-Klasse erstellt und kompiliert. Nachdem Sie die Servlet-Pakete installiert und dem Klassenpfad Ihres Computers hinzugefügt haben, können Sie Servlets mit dem Java-Compiler des JDK oder einem anderen aktuellen Compiler kompilieren.

Was kommt als nächstes?

Ich würde Sie Schritt für Schritt dazu bringen, Ihre Umgebung so einzurichten, dass sie mit Servlets beginnt. Also schnallen Sie sich Ihren Gürtel für eine schöne Fahrt mit Servlets an. Ich bin sicher, Sie werden dieses Tutorial sehr genießen.