Latest web development tutorials

Servlets Lebenszyklus

Servlets Lebenszyklus kann als der gesamte Prozess von der Erstellung bis Zerstörung definiert werden. Im Folgenden ist das Verfahren zu folgen Servlets:

  • Servlets wird durch den Aufruf der Methodeinit () initialisiert.
  • Servlet ruft denService () -Methode Wunsch des Kunden zu behandeln.
  • Servlets vondestroy () aufrufen Verfahren beendet (END).
  • Schließlich Servlets von Garbage Collector Garbage Collection JVM.

Lassen Sie uns diskutieren nun im Detail den Lebenszyklus-Ansatz.

init () Methode

init-Methode ist so konzipiert, nur einmal aufgerufen werden. Es wird aufgerufen, wenn Sie zuerst eine Servlet erstellen, bei jedem neuen Benutzeranforderungen nicht mehr nennen. Daher ist es für die einmalige Initialisierung, wie Applet init-Methode verwendet.

Wenn Benutzer ein Servlet erstellen, um den ersten Aufruf der Servlet-URL entspricht, aber Sie können auch die Servlet angeben wird geladen, wenn der Server zum ersten Mal gestartet wird.

Wenn der Benutzer einen Servlet aufruft, wird es eine Servlet-Instanz erstellen, jede Anfrage Benutzer einen neuen Thread, der richtige Zeitpunkt, Transfer zum doGet oder doPost Methode erzeugen. init () -Methode einfach erstellen oder einige Daten zu laden, die während des gesamten Lebenszyklus Servlets verwendet werden.

Init-Methode wird wie folgt definiert:

public void init () wirft ServletException {
  // Initialisierung Code ...
}

Service () -Methode

Service () -Methode ist die wichtigste Methode, um die eigentliche Aufgabe ausführt. Servlet-Container (dh Web-Server) ruft den Service () -Methode Anfragen vom Client (Browser) und dem Antwortformat zu handhaben an den Client zurückschreiben.

Jedes Mal, wenn der Server einen Servlet-Anforderung empfängt, wird der Server einen neuen Thread erzeugen und ruft den Service. Service () Methode überprüft den HTTP-Request-Typ (GET, POST, PUT, DELETE, etc.), und ruft doGet, doPost, doPut, doDelete Methoden zu gegebener Zeit.

Im Folgenden wird das Verfahren gekennzeichnet ist durch:

public void Service (ServletRequest Anfrage, 
                    ServletResponse Antwort) 
      wirft ServletException, IOException {
}

Service () -Methode durch den Behälter, der Service-Methode aufgerufen wird ruft doGet, doPost, doPut, doDelete Methoden zu gegebener Zeit. Also, Sie müssen nicht bedienen () Methode, alles zu tun, müssen Sie nur eine Anfrage von einem Client-Typ doGet () oder doPost () sein kann, außer Kraft zu setzen.

doGet () und doPost () Methode jedes Dienstanforderung ist die am häufigsten verwendete Methode. Hier sind die Eigenschaften dieser beiden Methoden.

doGet () -Methode

GET-Anfragen von normalen Anfragen, eine URL oder von einer Methode nicht näher bezeichnete HTML-Formular, wird es von der doGet () -Methode verarbeitet.

public void doGet (HttpServletRequest Anfrage,
                  HttpServletResponse Antwort)
    wirft ServletException, IOException {
    } // Servlet-Code

doPost () -Methode

POST-Anfrage kommt von einem speziell dafür vorgesehenen METHODE ist POST HTML-Formular, wird es durch die doPost () -Methode verarbeitet.

public void doPost (HttpServletRequest Anfrage,
                   HttpServletResponse Antwort)
    wirft ServletException, IOException {
    } // Servlet-Code

Methode destroy ()

destroy () Methode wird nur einmal aufgerufen, um am Ende des Servlets Lebenszyklus aufgerufen werden. () Zerstören Methode können Sie die Servlet-Datenbank-Verbindung zu deaktivieren, stoppen Sie den Hintergrund-Thread, eine Liste oder klicken Sie auf den Zähler Cookies auf die Platte geschrieben, und führen auch andere ähnliche clean-up-Aktivitäten.

Nachdem der Anruf () -Methode zu zerstören, wird Servlet-Objekt für die Garbage Collection markiert. destroy-Methode ist wie folgt definiert:

  public void destroy () {
    // Kündigung des Codes ...
  }

Grafik

Die folgende Abbildung zeigt einen typischen Servlet-Lebenszyklus-Ansatz.

  • HTTP-Server ist die erste, die Anforderung zu erreichen ist mit dem Servlet-Container delegiert.
  • Servlet-Container vor dem Dienst () -Methode den Aufruf des Servlets zu laden.
  • Dann behandelt Servlet-Container von mehreren Threads erzeugt mehrere Anforderungen, jedes Thread der Ausführung in einer einzigen Instanz des Servlet-Service () -Methode.
Servlets Lebenszyklus