Inhalt | Abbildung | Source | SCWCD | |||
|< | < | > | >| | Generated by CoCoDiL |
Ein Client sendet eine Anrage nicht direkt an ein Servlet, sondern an einen Container (z.B TomCat) der die Servlets verwaltet. Der Lebenszyklus eines Servlets ist genau definiert.
Es ist die Aufgabe das containers, eine Servlet Klasse zu finden, zu laden und zu instantiieren. Standardmässig wird ein Servlet erst beim Bedarf eingeladen. Dies hat die Anfrage dass die erste Anfrage länger dauert. Es ist aber auch leicht konfigurierbar dass ein Servlet sofort beim Start des Containers eingeladen wird.
Es können initiale Parameter aus einer Konfigurationsdatei (web.xml). Typisch für initiale Parameter sind z.B: Datenbank Connect Strings. Man kann die Datenbank wechseln ohne in den Code eingreifen zu müssen.
Beim Initialisieren wird folgende Methode der Klasse HttpServlet aufgerufen-
Ein ServletConfig speichert die Initialien Parameter in einer Paramterliste, auf die man dann dauerhaft zugreifen kann.
Ist ein Servlet eingeladen und initialisiert, so können Anfragen eines Clienten an das Servlet weitergeleitet werden. Für ein HttpServlet wird folgende Methode aufgerufen.
Je nach Http Methode in der Anfrage, wird innerhalb der service Methode die doGet(), doPost() usw. Methode aufgerufen.
Ein Servlet muss sich nicht dauernd im Container befinden. Ein Container kann ein Servlet das z.B. lange nicht mehr verwendet wurde zerstören. Bei Bedarf muss wieder ein neues Servlet eingeladen und neu instaniiert und initialisiert werden.
Vor dem zerstören eines Servlets wird die Methode destroy()aufgerufen. Damit hat das Servlet noch die Chance wichtige Daten zu speichern.
Inhalt | Abbildung | Source | SCWCD | |||
|< | < | > | >| | Generated by CoCoDiL |