Heim  >  Artikel  >  php教程  >  Servlet-Zusammenfassung

Servlet-Zusammenfassung

高洛峰
高洛峰Original
2016-12-01 13:20:411551Durchsuche

Ervlet-Zusammenfassung

1. Servlet ist für die Verarbeitung von Benutzeranfragen auf der Serverseite verantwortlich. Wenn der Client eine Anfrage an den Server sendet, findet der Server das entsprechende Servlet zur Verarbeitung die Anfrage. Ein Servlet muss an eine URL gebunden sein, und Benutzer greifen auf das Servlet zu, indem sie auf die URL zugreifen.



Drei Möglichkeiten zur Implementierung von Servlets

Java.servlet.Sertvlet-Klasse

Java .servlet.GenericServlet-Klasse

Java.servlet.HttpServlet-Klasse


3. Methoden in der Servlet-Schnittstelle

//Initialisierung

void init (ServletConfig config)

void service(ServletRequest request,ServletResponse Response)

//Destroy

void destroy()


String getServletInfo()

ServletConfig getServletConfig()

Der Client sendet eine Anfrage und der Server findet das entsprechende Servlet über die URL Objekt nicht vorhanden ist, erstellt der Server ein Servlet-Objekt

Nach dem Erstellen des Objekts ruft der Server sofort init (ServletConfig-Konfiguration) auf, um die Initialisierungsarbeit abzuschließen, und ruft dann

auf Servlet-Dienstmethode (ServletRequest req, ServletResponse res) Zu diesem Zeitpunkt müssen Sie die Parameteranforderung und Antwort daran übergeben.

Wenn der Client erneut auf dieses Servlet zugreift, wird es nicht erstellt, da das Servlet-Objekt bereits vorhanden ist. Servlet ist ein Singleton.

(Hinweis: Das Singleton-Muster ist ein häufig verwendetes Software-Designmuster. In seiner Kernstruktur enthält es nur eine spezielle Klasse, die als Singleton-Klasse bezeichnet wird. Das Singleton-Muster kann sicherstellen, dass eine Klasse im System vorhanden ist Eine Instanz und die Instanz ist von außen leicht zugänglich, was die Kontrolle über die Anzahl der Instanzen erleichtert und Systemressourcen spart. Wenn Sie möchten, dass nur ein Objekt einer bestimmten Klasse im System vorhanden ist, ist der Singleton-Modus die beste Lösung.

Wenn der Server das Servlet-Objekt zerstören muss, ruft er zuerst destroy() auf, um die Freigabe einiger Ressourcen abzuschließen, und zerstört dann das Objekt

4. Konfigurieren Sie das Servlet im Web. xml

HelloWorldServlet

< ;servlet-class>

cn.edu.aynu.rjxy.servlet.HelloWorldServlet


HelloWorldServlet

< url-pattern>

/helloWorld

Die Konfiguration besteht darin, die URL und Serlvet miteinander zu verbinden. Wenn der Benutzer darauf zugreift, wird das entsprechende Servlet gefunden, um die Anforderungsverarbeitung abzuschließen.

5.ServletConfig: Parameter der init()-Methode, der das Servlet-Konfigurationsobjekt und die entsprechenden Servlet-Konfigurationsinformationen darstellt

Tatsächlich sind die Konfigurationsinformationen das

servlet-class> cn.edu.aynu.rjxy.servlet.HelloServlet

ServletConfig-Objekt wird vom Server erstellt. Wenn der Server die init()-Methode aufruft, wird es als tatsächlicher Parameter an die Methode init() übergeben.

Wir können es in verwenden init()-Methode.

(1) String getInitParameter (Stringname): Wird verwendet, um die in web.xml konfigurierten Initialisierungsparameter abzurufen und den Parameterwert über den Parameternamen abzurufen.

(2) Enumeration getInitParameterNames(): Wird verwendet, um alle in web.xml konfigurierten Initialisierungsparameternamen abzurufen.

(3) ServletContext getServletContext(): wird verwendet, um das ServletContext-Objekt zurückzugeben.

(4) String getServletName(): wird verwendet, um den Namen des in web.xml konfigurierten Servlets zurückzugeben , -Element angegebene Name

; school

;/param-value>

java

class1

; 2

Laufergebnis:

Das Objekt wurde sofort erstellt und initialisiert

school=aysfxy

major=java

class1=2

school=aysfxy

class1 =2

Hauptfach=Java

Schule=aysfxy

Hauptfach=Java

Klasse1=2

Schule=aysfxy

class1=2

major=java

6 : Es ist eine abstrakte Klasse, die implementiert Die javax.servlet.Servlet-Schnittstelle kann auch durch Erben dieser Klasse implementiert werden

Die Methoden getServletContext(), getInitParameter() und andere in der Klasse können direkt verwendet werden. Wenn Sie Initialisierungsparameter ausführen möchten,

Überschreiben Sie nicht die Methode init(ServletConfig config). aber überschreiben Sie es. Schreiben Sie die Methode init()

HttpServlet: Es handelt sich um eine Servlet-Klasse, die speziell zur Verarbeitung von HTTP-Protokollanforderungen verwendet wird. Wir können Servlet implementieren, indem wir HttpServlet erben.

Dies ist für uns der einfachste Weg Wir werden dies in Zukunft tun, da es nur zwei vom Client gesendete Methoden gibt: get und post. Wir müssen also nur diese beiden Methoden neu schreiben.


7.HttpServlet: Es handelt sich um eine Servlet-Klasse, die speziell zur Verarbeitung von HTTP-Protokollanforderungen verwendet wird. Wir können Servlet durch Erben von HttpServlet implementieren.

Dies ist die einfachste Der Weg besteht darin, dies in Zukunft zu tun, da die vom Client gesendeten Anforderungen nur zwei Möglichkeiten zum Abrufen und Posten sind.

Daher müssen wir nur diese beiden Methoden neu schreiben.


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Erster Kontakt mit NginxNächster Artikel:Erster Kontakt mit Nginx