Servlet


Servlets sind in Java geschriebene Module, die Request-/Response-orientierte Server (in der Regel Java-fähige HTTP-Server) erweitern. Sie ersetzen meist die klassischen CGI-Perl-Scripts, die in vielen Servern für eine Dynamisierung von HTML-Informationsangeboten genutzt werden. Servlets werden heute in allen wichtigen Web-Servern mit dem gleichen, standardisierten API unterstützt.

Während der Servlet-Programmierer immer gegen das gleiche Java-API programmiert, sind die dazu verwendeten Servlet-Klassen so angelegt, dass sie die schnellste Schnittstelle des Webservers benutzen (z.B. NSAPI, ISAPI).

Ein Vorteil von Servlets gegenüber CGI-Lösungen ist ihre Eigenschaft, mit dem Start des Webservers geladen und initialisiert werden und resistent im Speicher bleiben zu können. Im Gegensatz dazu müssen CGI-Lösungen (außer Fast-CGI) immer neu gestartet werden und können daher z.B. keine Datenbankverbindungen halten.

Es gibt verschiedene Servletprodukte auf dem Markt, die vor allem Unterschiede bzgl. der folgenden Kriterien aufweisen:

  • dynamisches Neuladen von modifizierten Servlets ohne Server-Stopp,
  • Servlet-Chaining und -Filtering,
  • Multi-Homing-Support (Virtual Server),
  • SERVLET-Tag-Support,
  • Taglet-Support,
  • Administrationsunterstützung.

Servlets können auf ganz verschiedene Art und Weise aufgerufen werden:

  • direkt über eine URL,
  • über ein Servlet-Tag in einer dynamischen HTML-Seite,
  • über ein Taglet,
  • über eine Java Server Page (JSP).

Außerdem unterscheidet man Servlets, die:

  • bei Start des Servers geladen und nicht mehr aus dem Speicher entfernt werden,
  • beim Aufruf der URL geladen werden und eine definierbare Zeit im Speicher verbleiben.

Aktuelle Beiträge

Sichere E2E-Verschlüsselung im Unternehmen

Hybrid Work ist gekommen, um zu bleiben und die Arbeitsplätze sind mittlerweile entsprechend ausgestattet. Für jede Branchenanforderung gibt es eine eigene Software, die oft als SaaS aus der Cloud bezogen wird. Dabei gilt es, Sicherheitslücken zu vermeiden. Eine Maßnahme hierzu kann konsequente Ende-zu-Ende-Verschlüsselung nach dem Zero-Knowledge-Prinzip sein.