Che cos’è e caratteristiche di un Java Servlet e Java Server Pages (JSP)

Che cos’è e caratteristiche di un Java Servlet e Java Server Pages (JSP)

Tutti i settori aziendali hanno bisogno di informazioni perché tutti gli individui hanno la necessità di ottenere informazioni per poter compiere i propri processi decisionali. Un’azienda ha bisogno di ricevere e fornire informazioni in tempi sempre più brevi: ha bisogno di sistemi informativi. Resta quindi di fondamentale importanza che la comunità dedita allo sviluppo del software inizi a produrre e fornire strumenti che siano in grado di analizzare il contenuto delle informazioni e così via.

La tecnologia Java, dalla sua introduzione sul mercato avvenuta circa alla metà degli anni ’90, è penetrata sempre più profondamente nel mercato informatico. Il suo posizionamento all’interno delle tecnologie disponibili è via via mutato, spostandosi dagli scopi iniziali, che la volevano fortemente orientata ad aumentare l’interattività delle pagine Web, verso un massiccio utilizzo lato server (server side) dove, per le peculiari caratteristiche di portabilità e scalabilità, è diventata la tecnologia di riferimento nella realizzazione dei sistemi distribuiti complessi. Le caratteristiche Object Oriented, l’introduzione di alcune tecnologie collegate e, soprattutto, la libera disponibilità del Java Development Kit su un gran numero di piattaforme hardware e software, hanno fatto sì che Java sia considerato, a livello di applicazione Enterprise, una scelta obbligata là dove sono necessarie caratteristiche quali la robustezza, l’estensibilità, l’interoperabilità delle applicazioni software.

Che cos'è e caratteristiche di un Java Servlet e Java Server Pages (JSP)

Java Servlet

Un Java Servlet è per il web server quello che un applet è per il web browser:

  1. un’estensione delle funzionalità basilari;
  2. un componente che soddisfa un ciclo di vita ben definito.

L’applicazione principale, nel caso di un applet, è costituita dal browser web; nel caso dei servlet le cose si fanno un po’ più complesse. Nei web server tradizionali (Apache, Netscape, IIS, ecc…) il motore di attivazione dei servlet è costituito da un processo, in genere una macchina virtuale Java, separato; nei web server realizzati interamente in Java (Java Web Server, ecc…) i servlet sono attivati all’interno dello stesso web server. Per semplicità nella trattazione ci riferiremo all’oggetto in grado di attivare oggetti di tipo servlet come al servlet engine (più propriamente detto servlet container).

Un servlet, in genere, viene caricato dal servlet engine on demand, cioè in seguito al ricevimento di una richiesta:

  1. il servlet viene ricercato tra le classi disponibili all’interno di un CLASSPATH prestabilito, caricato in memoria e istanziato;
  2. il servlet engine inizializza il servlet chiamando il metodo init();
  3. le richieste vengono passate al servlet tramite il metodo service();
  4. se il servlet engine ritiene necessario liberare risorse, può decidere di disattivare i servlet non in uso notificando loro la propria decisione tramite il metodo destroy().

Il client dunque richiede una risorsa al server; il web server identifica la richiesta come di competenza del servlet engine; questo ricerca il servlet all’interno del CLASSPATH, lo attiva e, tramite un meccanismo di tipo richiesta / risposta, ne utilizza le funzionalità.

Java Server Pages (JSP)

Java Server Pages (JSP) è un sistema per lo sviluppo di pagine web dinamiche. All’interno del codice HTML viene inserito del codice Java (denominato scriptlet) il quale viene eseguito sul server e il risultato (HTML e output dello scriptlet) viene mandato al browser.

Il file .jsp viene trasformato dal servlet engine in una classe Java che estende la classe HttpServlet (JSP implementation class). La nuova classe viene compilata e trasformata in bytecode (file .class). Per ogni client che richiede quella pagina viene istanziato un nuovo oggetto di tale classe (JSP page object). L’oggetto gestisce la richiesta del client tramite il metodo service() che contiene tutto il codice Java contenuto nella pagina .jsp.

Pubblicato da Vito Lavecchia

Lavecchia Vito Ingegnere Informatico (Politecnico di Bari) Email: [email protected] Sito Web: https://vitolavecchia.altervista.org

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *