ottobre 22, 2017

Creare una webapp MVC con Struts, Hibernate e Velocity

In questo articolo viene descritto come creare lo skeleton di un’applicazione web basata sul pattern MVC (Model View Controller).

Utilizzato per separare e stratificare la logica di presentazione dei dati dalla logica di business, il pattern MVC è considerato una best-practice nello sviluppo di applicazioni web. Esistono molte tecnologie che forniscono framework e soluzioni basate sul pattern MVC (Ruby on Rails, Spring-MVC, Apache Tapestry, Perl Catalyst ecc.). In questo tutorial vengono utilizzate queste tecnologie:

Apache Struts: il framework MVC di Apache Foundation
Hibernate: il framework ORM per il livello di persistenza dei dati
Apache Velocity: il framework di Apache per referenziare oggetti java a livello di presentazione (una valida alternativa alle pagine jsp, Java Server Pages)

Per completare questa guida viene fatto riferimento a precedenti articoli in cui è stato già trattato come configurare i framework Velocity e Hibernate nel contesto di un’applicazione web Struts-MVC. Viene creato un progetto web di esempio “sample-struts” utilizzando Eclipse IDE. Il livello di business dell’applicazione è rappresentato da un ipotetico cliente.

CHECK OUT THE SOURCE CODE ON GITHUB

ROADMAP

STEP 1 – Creazione progetto web in Eclipse e configurazione di Struts-MVC e Velocity
STEP 2 – Configurazione minima di Hibernate nel progetto
STEP 3 – Configurazione avanzata di Hbernate, DAO-Factory pattern sullo strato di persistenza
STEP 4 – Java POJO e mapping Hibernate
STEP 5 – Funzionalità CRUD di base

STEP 1 – Creazione progetto web in Eclipse e configurazione di Struts-MVC e Velocity

Creare un nuovo progetto struts-blank in Eclipse e configurare il framework Velocity. Seguire l’articolo qui, al termine il browser dovrebbe visualizzare una pagina di test come questa:

velocity-test-screen

Aggiungiamo una pagina index.vm in modo da mappare il base-context url http://localhost:8080/sample-struts con una pagina di benvenuto. La pagina contiene anche un link all’elenco clienti che verrà gestito più avanti.

– WebContent/pages/index.vm

 

Aggiorniamo il file WebContent/WEB-INF/web.xml

Ecco un’estratto dell’output sul browser puntando su http://localhost:8080/sample-struts

struts-hibernate-velocity-index

STEP 2 – Configurazione minima di Hibernate nel progetto

Seguire questo articolo per completare una configurazione di base di Hibernate. Se non ci sono errori, ecco cosa appare allo startup del Tomcat.

hibernate-build-session-factory

STEP 3 – Configurazione avanzata di Hbernate, integrazione del design pattern DAO-Factory sullo strato di persistenza

Procediamo ora con l’integrazione del pattern DAO-Factory all’interno del progetto. Seguire questo articolo, il layout di progetto dovrebbe presentarsi così:

dao-factory-hibernate-project-layout

STEP 4 – Java POJO e mapping Hibernate

Continuiamo con l’implementazione dell’oggetto POJO relativo al cliente e al mapping ORM su Hibernate. Seguire questo articolo. Ecco come dovrebbe presentarsi il nuovo layout di progetto.

pojo-hibernate-project-layout

STEP 5 – Funzionalità CRUD di base

L’ultima parte di questa guida riguarda l’implementazione delle funzionalità di inserimento, modifica, visualizzazione e cancellazione di un cliente. Seguire questo articolo. Di seguito due screenshot sulla visualizzazione elenco clienti e aggiornamento cliente.

– Elenco clienti

struts-hibernate-velocity-multi-customer

 

– Visualizzazione/Aggiornamento singolo cliente

struts-hibernate-velocity-single-customer

 

Related posts

Leave a Reply

Your email address will not be published.