Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Introduzione

La storia di Struts, il framework che semplifica J2EE sfruttando il pattern MVC
La storia di Struts, il framework che semplifica J2EE sfruttando il pattern MVC
Link copiato negli appunti

Apache Struts è un progetto open source sponsorizzato dalla Apache Software Foundation ed è un'implementazione Java server-side del design pattern MVC (Model View Controller).

Il progetto Struts è nato con l'intenzione di implementare un framework open-source per la creazione di applicazioni Web che permettesse la separazione del livello di presentazione e che fosse, allo stesso tempo, astratto dai vari livelli di dati e dalle transazioni.

Nato nel 2000 per opera di Craig R. McClanahan, la popolarità del framework è cresciuta enormemente nel corso degli ultimi anni. Dopo il rilascio di Struts 1.1, nel giugno 2003, Struts è diventato uno degli scenari più importanti per lo sviluppo di complesse applicazioni web basate su JSP.

Nel 2008 nasce Struts 2, che si differenzia parecchio dalla prima versione: questa release non segue infatti il progetto originale, ma è una evoluzione di WebWork, il framework open source, parte del progetto OpenSymphony. Per questo motivo la migrazione tra la versione 1 e la versione 2 non è semplice. In questa guida ci occuperemo della versione 1 del progetto e analizzeremo la versione 2 per differenze con la prima.

Perché usare Struts

Questo framework semplifica notevolmente la vita di un programmatore, sia in fase di sviluppo, che di revisione e di configurazione delle proprie applicazioni.

L'utilizzo di Struts supporta vantaggi significativi in termini del progetto:

  • Modularità e Riusabilità: i diversi ruoli dell'applicazione sono affidati a diversi componenti. Ció consente di sviluppare codice modulare e più facilmente riutilizzabile
  • Manutenibilità: l'applicazione è costituita da livelli logici ben distinti. Una modifica in uno dei livelli non comporta modifiche negli altri
  • Rapidità di sviluppo: è possibile sviluppare in parallelo le varie parti dell'applicazione, logica di business e di view

Il design pattern MVC

Iniziamo esaminando le 3 componenti alla base del design pattern MVC:

Componente Descrizione
Model Rappresenta i dati, tipicamente persistenti su database, attraverso oggetti, questa rappresentazione ci permette di manipolare e il modello dei dati in modo semplificato
View È lo strato più esterno, quello di presentazione. È qui che definiamo l'interfaccia utente, forniamo una rappresentazione del modello dei dati e riceviamo richieste dall'esterno.
Controller È il componente che contiene la logica di business. Qui gestiamo le interazioni con l'interfaccia, istradiamo le richieste, preleviamo i dati dal Model e stabiliamo quale View dovrà rappresentarli e come.
Figura 1. Model View Controller
Model View Controller

Questo approccio si preoccupa di separare la responsabilità nelle web application. Una richiesta client viene intercettata dal Controller, attraverso il Model vengono forniti tutti i metodi per accedere ai dati dell'applicazione e quindi per elaborare la risposta e visualizzarla attraverso i componenti View.

Il componente più importante è quindi il Controller ed è la parte fondamentale del framework. La potenza di questo sistema sta, infatti, nella possibilità di scegliere diverse tecnologie per implementare le classi del Model (dal più comune dei DAO a ORM di vario genere come Hibernate) e il View Engine che si preferisce (JSP, Velocity, etc.).

Nel corso della guida analizzeremo i principali componenti di un'applicazione basata su Struts suddividendoli in componenti model, view e controller; poi passeremo alla configurazione di un applicazione web, descriveremo le funzionalità più importanti offerte da questo framework e infine analizzeremo i concetti principali della nuova versione del progetto.

Ti consigliamo anche