Ciclo di vita del servlet

Questo tutorial fornisce una comprensione dei servlet Java e del suo ciclo di vita. Prima di iniziare con il ciclo di vita del servlet, cerchiamo di ottenere alcune informazioni su cosa sia esattamente un servlet e il suo processo.

Che cos'è un servlet?

Java Servlet è una classe di linguaggio di programmazione Java definita in Java Enterprise Edition anche nota come Java EE. È stato sviluppato da Sun Microsystems nel 1997. Dopo la prima versione 1.0 di Servlet, rilasciata nel 1997, sono state rilasciate molte nuove versioni, l'ultima è Servlet 4.0.

La tecnologia Servlet è molto utile nella creazione di applicazioni Web in quanto genera pagine Web dinamiche mentre risiede sul lato server. I servlet Java hanno sostituito CGI o Common Gateway Interface che era un linguaggio di scripting comunemente usato come linguaggio di programmazione lato server.

Servlet è indipendente dalla piattaforma, robusto e può accedere a tutte le API Java come l'API JDBC (Java Database Connectivity) per accedere ai database di qualsiasi azienda.

Servlet Java viene utilizzato per creare applicazioni Web di natura dinamica. Per fare ciò, estende la capacità del server. È in grado di funzionare in qualsiasi server Web che abbia un contenitore Servlet integrato con esso.

Il processo Servlet Java può essere facilmente compreso dai passaggi indicati di seguito:

  1. Il client invia una richiesta a un contenitore servlet. Il client qui si riferisce a qualsiasi browser come Chrome, IE, Mozilla, ecc. In uso.
  2. Il contenitore o il server Web cerca il servlet. Non appena il server trova il servlet, avvia il servlet.
  3. Ora, il servlet elabora la richiesta del client e quindi una risposta viene inviata al server.
  4. Questa risposta viene inviata al client dal server.

Prima di passare al ciclo di vita di un servlet, dovresti essere chiaro con le terminologie finora utilizzate in questo articolo. Ciò sarà utile durante la comprensione del ciclo di vita di Servlet.

  1. Server Web : il server Web o il server HTTP gestisce le richieste HTTP e le risposte HTTP. Le richieste inviate dai client vengono gestite e viene inviata una risposta in base alla richiesta effettuata da questo server.
  2. Contenitore Web : Contenitore Web o Contenitore servlet o Motore servlet interagisce con i servlet. È un componente importante di un server Web in quanto gestisce il ciclo di vita di un servlet.

Ciclo di vita di Servlet

Puoi comprendere il ciclo di vita di un Servlet come una sequenza di passaggi che un servlet subisce nel suo arco di vita, a partire dalla sua iniziazione alla distruzione. Servlet Engine gestisce il ciclo di vita del servlet come detto in precedenza.

Il ciclo di vita di un servlet può essere riassunto nei seguenti cinque punti:

  1. La classe Servlet è caricata.
  2. Viene creata l'istanza Servlet
  3. Il metodo init () viene invocato per inizializzare il servlet.
  4. Il metodo service () viene invocato ripetutamente per ogni richiesta client effettuata.
  5. Il servlet viene distrutto usando il metodo destroy ().

Nota: gli oggetti sono anche chiamati istanze.

1) Caricamento della classe servlet

La classe servlet viene caricata con l'aiuto di classloader. Non appena la richiesta di un servlet viene ricevuta dal contenitore Web, la classe servlet viene caricata.

2) Creazione di un'istanza della classe Servlet

Un'istanza del servlet viene creata dal contenitore Web non appena viene caricata la classe servlet. Tieni presente che la creazione di un'istanza servlet è una volta nella vita per ogni servlet, il che significa che verrà istanziata una sola volta nel ciclo di vita della servlet.

3) Richiamare il metodo Init ()

Dopo aver creato l'istanza servlet, l'attività del contenitore Web è di invocare il metodo init (). Il metodo init () viene invocato una sola volta e inizializza il servlet. Se un servlet viene invocato da qualsiasi utente, verrà creata solo un'istanza di questo servlet. Ogni singola richiesta si traduce in una generazione di un nuovo thread. I dati creati o caricati invocando il metodo init () rimangono per tutta la vita del servlet.

Si noti che il metodo init () verrà chiamato solo una volta durante l'intera vita del servlet.

La sintassi indicata di seguito invocherà il metodo init -

public void init () genera ServletException

(

/ / Code

)

4) Richiamare il metodo Service ()

Il metodo Service () è un metodo importante che verrà chiamato ogni volta che si riceve una richiesta per il servlet. Il contenitore Web è il componente che chiamerà il metodo service () per eseguire un lavoro reale, ovvero per ricevere richieste inviate dal browser client e gestirlo inviando una risposta appropriata al client. Quando il servlet viene inizializzato, viene invocato il metodo di servizio e vengono analizzati tutti i tipi di richiesta HTTP come GET, POST, PUT, DELETE, ecc. Dopo che i tipi di richiesta sono noti, il metodo service () invierà la richiesta al suo gestore metodo basato su quello.

Si consideri il caso di una richiesta POST fatta dal cliente. Il lavoro del metodo service () consiste nel chiamare il metodo doPost () e inviargli la richiesta. Tutte le richieste hanno il proprio metodo gestore a cui verrà effettuata una chiamata dal metodo service () in base al tipo di richiesta effettuata. Ad esempio, per ottenere un'eccezione esiste il metodo del gestore doGet (), per Put esiste un metodo doPut () e così via.

Si noti che il metodo service () viene invocato ogni volta che si verifica una richiesta client. Ciò significa che, diversamente dal metodo init () e destroy (), il metodo service () può essere invocato innumerevoli volte durante il ciclo di vita del servlet.

La sintassi che trovi di seguito invocherà il metodo service () per Servlet:

il servizio vuoto pubblico (Req ServletRequest, risposta ServletResponse) genera IOException, ServletException

(

//codice

)

5) Invocare un metodo Destroy ()

In occasione della chiusura del server Web, al servlet viene data la possibilità di scaricare tutti i servlet creati. Il metodo destroy () rimuoverà tutti i servlet inizializzati pulendo così la memoria.

La sintassi per questo è:

public void destroy ()

Articoli consigliati

Questa è stata una guida al ciclo di vita di Servlet. Qui abbiamo discusso i passaggi in sequenza per i quali un servlet subisce nel suo arco di vita, a partire dalla sua iniziazione alla distruzione. Puoi anche consultare i nostri altri articoli suggeriti per saperne di più -

  1. Domande di intervista con servlet Java
  2. Domande di intervista servlet
  3. Che cos'è la sicurezza informatica?
  4. Che cos'è SQL Server?

Categoria: