INTRODUZIONE ALLE WEB APPLICATION
È 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.
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
Le Web Application create con Spring diminuiscono la complessità del lavoro, riducendo al minimo gli sforzi di realizzazione da parte dei programmatori.
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.
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.
Vediamo il codice della classe più importante di 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.
ARCHITETTURA DELLE WEB APP CON SPRING
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.
Lo strato di persistenza gestisce lo scambio dati fra l’applicazione e il database.
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.
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.
DOWNLOAD CODICE DELL’ARTICOLO
In basso è riportato il video per l’importazione nel proprio workspace del progetto.
Scrivi un commento