English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Servlet ist ein Dienst, der HTTP-Anfragen bedient und implementiert javax.servlet.Servlet Java-Klasse für das Interface. Web-Anwendungsentwickler schreiben in der Regel Servlets, um javax.servlet.http.HttpServlet zu erweitern und eine abstrakte Klasse des Servlet-Interfaces zu implementieren, die speziell zum Verarbeiten von HTTP-Anfragen verwendet wird.
Nachfolgend ist ein Beispiel der Quellcode für Servlet, das Hello World ausgibt:
// Importiere erforderliche java-Bibliotheken import java.io.*; import javax.servlet.*; import javax.servlet.http.*; // erweitert die HttpServlet-Klasse public class HelloWorld extends HttpServlet { private String message; public void init() throws ServletException { // Notwendige Initialisierung ausführen message = "Hello World"; } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // Den Inhaltstyp der Antwort einstellen response.setContentType("text/html"); // Die tatsächliche Logik befindet sich hier PrintWriter out = response.getWriter(); out.println("<h1">" + message + "</h1">); } public void destroy() { // nichts tun } }
Lassen Sie uns den obigen Code in die Datei HelloWorld.java schreiben, legen Sie diese Datei in C:\ServletDevel (unter Windows) oder /usr/ServletDevel (unter UNIX) müssen Sie diese Verzeichnisse auch in den CLASSPATH aufnehmen.
Angenommen, Ihre Umgebung ist korrekt eingerichtet, geben Sie ServletDevel Verzeichnis, und kompilieren Sie HelloWorld.java wie folgt:
$ javac HelloWorld.java
Wenn die Servlet auf eine andere Bibliothek angewiesen ist, müssen Sie diese JAR-Dateien im CLASSPATH enthalten. Hier habe ich nur servlet-api.jar JAR-Datei, da ich in meinem Hello World-Programm keine anderen Bibliotheken verwende.
Dieser Befehl verwendet den eingebauten Compiler javac des Java Software Development Kits (JDK) von Sun Microsystems. Um diesen Befehl ordnungsgemäß auszuführen, muss der Pfad der Java SDK im Umgebungsvariable PATH eingestellt werden.
Wenn alles gut geht, wird die obige Compilation eine HelloWorld.class-Datei im gleichen Verzeichnis generieren. Das nächste Kapitel wird erläutern, wie bereits kompilierte Servlets in der Produktion bereitgestellt werden.
Standardmäßig liegt die Servlet-Anwendung auf dem Pfad <Tomcat-Installation-Verzeichnis>/webapps/ROOT-Verzeichnis liegt und die Class-Datei in <Tomcat-Installation-Verzeichnis>/webapps/ROOT/WEB-INF/classes enthalten.
Wenn Sie einen vollständigen Klassennamen haben com.myorg.MyServletdaher muss diese Servlet-Klasse im WEB-INF/Klassen/com/myorg/MyServlet.class.
Verzeichnis, und kopieren Sie HelloWorld.class in das Verzeichnis <Tomcat-Installation-Verzeichnis>/webapps/ROOT/WEB-INF/classes-Installation-Verzeichnis>/webapps/ROOT/WEB-INF/ Datei web.xml Erstellen Sie im <web
<web-app> <servlet> <servlet-name>HelloWorld</servlet-name> <servlet-class>HelloWorld</servlet-class> </servlet> <servlet-mapping> <servlet-name>HelloWorld</servlet-name> <url-pattern>/HelloWorld</url-pattern> </servlet-mapping> </web-app>
Diese Einträge müssen im <web-app>.../web-app> Tags verwenden. In dieser Datei könnten bereits verschiedene Einträge vorhanden sein, aber das ist Ihnen egal.
Bis hierher haben Sie fast alles erledigt. Lassen Sie uns nun <Tomcat-Installation-Verzeichnis>\bin\startup.bat (unter Windows) oder <Tomcat-Installation-Verzeichnis>/bin/startup.sh (unter Linux)/Solaris und anderen (z.B.) Solaris) starten Sie den Tomcat-Server und geben Sie schließlich in die Adressleiste des Browsers ein http://localhost:8080/HelloWorldWenn alles gut geht, sehen Sie unten das Ergebnis: