INTRODUZIONE ALLE WEB APPLICATION

spring

È grazie allo Spring Framework che possiamo realizzare le Web Applications. Vediamo subito di chiarire cosa sono le Web App con il supporto di alcune immagini.

Funzionamento web application

ANALIZZIAMO LA FIGURA SOPRA RIPORTATA

Nel momento in cui digitiamo nel browser un indirizzo, il browser stesso usa come mezzo di comunicazione Internet e utilizza un protocollo HTTP, o HTTPS quando i dati sono criptati, per inviare la richiesta. Nel fare questo invia una specifica richiesta a un server, un computer in grado di soddisfare le richieste, in questo caso abbiamo richiesto la risorsa index e il server restituisce la pagina HTML, CSS con a volte del JavaScript nella risposta inviata al client.

ANALISI DELLA RICHIESTA DEL CLIENT

Analizziamo bene la risorsa richiesta. http è il protocollo, www.miosito.com identifica il server. Quando nel browser digitiamo questo indirizzo www.miosito.com viene passato ad un altro server, il DNS (Domain Name System) che ha mappato al suo interno questo indirizzo mnemonico, facile da comprendere per un essere umano, in un indirizzo IP, che è poi l’indirizzo IP del server. Una volta giunta la richiesta al server con l’indirizzo IP risolto dal DNS, la palla passa al Web Server, nel nostro caso Tomcat che gira la richiesta alla Web Application che capisce che il Client ha chiesto la risorsa index, se necessario attinge i dati da un database e restituisce la risposta in formato HTTP, o HTTPS, ma può essere anche JSON o XML.

TECNOLOGIE PER LA CREAZIONE DELLE WEB APP

Tecnologie

Le Web Application create con Spring diminuiscono la complessità del lavoro, riducendo al minimo gli sforzi di realizzazione da parte dei programmatori.

Caratteristiche Spring Framework

COME SPRING GESTISCE LE RICHIESTE DEI CLIENT

Il primo passo da compiere è l’inserimento dell’indirizzo nel nostro browser. Vediamo con una immagine l’infrastruttura con cui Spring serve le risorse ad un certo client.

Gestione richieste in Spring MVC

Il Dispatcher Servlet analizza la richiesta e controlla quale risorsa stiamo richiedendo, attiva il Controller che gestisce quella risorsa e restituisce il modello della risorsa index. Il modello lo possiamo intendere come la versione grezza dei dati che dovranno essere restituiti al client. A questo punto la palla passa ad un altro fondamentale elemento dello Spring, il View Resolver che avrà il compito di creare la vista, cioè la nostra pagina web in formato HTML, CSS, JAVASCRIPT utilizzando come tecnologia le JSP (Java Server Page) e restituisce la risposta al client.

CREAZIONE DEL PRIMO PROGETTO DI TEST

Ti riporto un video utile nella creazione del progetto.

CREAZIONE DELLE CLASSI JAVA DI CONFIGURAZIONE

Quando andiamo a chiedere una determinata risorsa utilizziamo il protocollo HTTP e il metodo GET. È il primo step. Il Dispatcher Servlet farà da interfaccia tra la nostra richiesta e la risorsa. Il primo passo nella nostra piccola applicazione di esempio sarà quello di configurare il Dispatcher Servlet. Il codice spiega passo dopo passo la procedura.

Dispacher Servlet

Vediamo il codice della classe più importante di configurazione.

Configurazione

CREAZIONE INDEX CONTROLLER

Ora andremo a configurare il controller, come già ti ho detto il Dispatcher Servlet deve andare a cercare un controller in grado di gestire la richiesta. Infine, vediamo il codice della pagina JSP.

Controller
Pagina JSP

ARCHITETTURA DELLE WEB APP CON SPRING

Architettura Web App

Come abbiamo visto la richiesta arriva al Dispatcher Servlet, il quale si occupa di cercare un controller che può restituire la risorsa desiderata. Crea inoltre l’infrastruttura della view che, come abbiamo visto, è costituita da pagine JSP. Tutte queste componenti fanno parte del Presentation Layer. Vediamo cosa si intende per Domain Layer. In sostanza lo strato di dominio costituisce la rappresentazione tabellare delle varie entità. Non dimentichiamo le relazioni, anch’esse dovranno essere specificate in questo Layer.

Domain Layer

 Lo strato di persistenza gestisce lo scambio dati fra l’applicazione e il database.

Persistence Layer

Lo strato di servizio è uno strato intermedio, è il punto di congiunzione tra i vari controller e lo strato di persistenza. Infatti, è buona norma che il controller non acceda direttamente allo strato di persistenza ma attraverso uno strato intermedio che si occupa della logica di business.

Service Layer

Come già abbiamo detto, tutto parte dalla richiesta che viene presa in carico dal Presentation Layer, il model si inserisce nello strato di persistenza perché costituisce la mappatura di tutte le tabelle del nostro database relazionale.

Schema Web App

DOWNLOAD CODICE DELL’ARTICOLO

CODICE DELL’ARTICOLO

In basso è riportato il video per l’importazione nel proprio workspace del progetto.

IL LINGUAGGIO JAVA

IL LINGUAGGIO JAVA

LINK AI POST PRECEDENTI

SPRING FRAMEWORK