1. Introduzione
Il PDF di questo documento è disponibile |QUI|.
Gli esempi contenuti in questo documento sono disponibili |QUI|.
Questo documento ha lo scopo di introdurre le basi della programmazione web MVC in Java utilizzando servlet e pagine JSP. Dopo aver letto questo documento e aver provato gli esempi, il lettore dovrebbe aver acquisito padronanza dei concetti di base della programmazione web in Java.
Per comprendere appieno gli esercizi forniti, può essere utile il documento [Introduzione alla programmazione web in Java con servlet e pagine JSP (2002)]. I consigli di lettura forniti all'inizio di alcune sezioni fanno riferimento a questo articolo. Il presente documento sarà di seguito indicato come [ref1].
Questo documento può essere utilizzato in vari modi:
- Installare gli strumenti, scaricare il codice dal sito web di questo documento ed eseguire i test suggeriti. Un principiante non trarrà alcun vantaggio da questo approccio. Uno sviluppatore esperto, tuttavia, potrebbe farlo se è interessato solo a testare l'ambiente di sviluppo Eclipse/WTP.
- Installare gli strumenti, seguire il documento ed eseguire i test suggeriti copiando e incollando da questo documento. Non leggere il documento [ref1]. Procedendo in questo modo, inizierai ad acquisire le basi dello sviluppo web, ma alcuni punti rimarranno poco chiari o misteriosi. Questo è un metodo valido se vuoi procedere rapidamente con l'intenzione di approfondire solo in un secondo momento, quando scriverai un'applicazione personale e magari utilizzerai un documento di riferimento diverso da [ref1].
- Fai come al punto 2, ma leggi [ref1] quando ti viene consigliato di farlo. Questo metodo più lento eliminerà alcuni degli aspetti poco chiari e misteriosi del Metodo 2, ma non ti prepara bene al lavoro autonomo perché il codice ottenuto tramite copia/incolla non sarà necessariamente compreso appieno.
- Facciamo la stessa cosa del punto 3, ma digitiamo tutto il codice da soli. Questo è ovviamente più lungo e noioso, ma molto efficace. Per digitare il codice, devi leggerlo, il che richiede di prestare attenzione al codice e, di conseguenza, inizia a favorire la comprensione. Questa riscrittura manuale raramente sarà priva di errori. Questi errori, che saranno segnalati da vari strumenti di Eclipse, spingeranno il lettore a mettere in discussione il codice che ha scritto e quindi a comprenderlo meglio.
Questo documento incorpora una parte significativa di un articolo pubblicato nel gennaio 2005 intitolato "Sviluppo Web in Java con Eclipse e Tomcat" e disponibile all'URL [http://tahe.developpez.com/java/eclipse/]. I contributi di questo documento sono i seguenti:
- l'uso del plugin Eclipse WTP per lo sviluppo di applicazioni web,
- una riorganizzazione del documento per enfatizzare l'architettura MVC a 3 livelli, che era stata appena accennata nel documento originale,
- un esempio di applicazione web MVC a 3 livelli che utilizza dati provenienti da un DBMS.
Un'applicazione web a tre livelli ha la seguente struttura:
![]() |
- il livello [DAO] gestisce l'accesso ai dati, il più delle volte dati persistenti all'interno di un DBMS. Ma possono anche essere dati provenienti da sensori, dalla rete, ecc.
- Il livello [logica di business] implementa gli algoritmi della "logica di business" dell'applicazione. Questo livello è indipendente da qualsiasi forma di interfaccia utente. Di conseguenza, deve essere utilizzabile con un'interfaccia da console, un'interfaccia web o un'interfaccia client avanzata. Deve quindi essere testabile al di fuori dell'interfaccia web, in particolare con un'interfaccia da console. Questo è generalmente il livello più stabile dell'architettura. Non cambia se l'interfaccia utente o il metodo di accesso ai dati necessari per il funzionamento dell'applicazione vengono modificati.
- Il livello [web], che è l'interfaccia web che consente all'utente di controllare l'applicazione e ricevere informazioni da essa.
L'articolo [http://tahe.developpez.com/java/eclipse/] fornisce solo esempi di applicazioni web limitate al solo livello [web]. Qui forniamo un esempio che utilizza tutti e tre i livelli.
