Struts 2 - Architettura
Da un livello elevato, Struts2 è un framework pull-MVC (o MVC2). Il pattern Model-ViewController in Struts2 è implementato con i seguenti cinque componenti principali:
- Actions
- Interceptors
- Stack di valori / OGNL
- Risultati / Tipi di risultati
- Visualizza le tecnologie
Struts 2 è leggermente diverso da un framework MVC tradizionale, in cui l'azione assume il ruolo di modello piuttosto che di controller, sebbene vi siano alcune sovrapposizioni.
Il diagramma sopra mostra il file Model, Visualizzare e Controller all'architettura di alto livello di Struts2. Il controller è implementato con un fileStruts2Dispaccia il filtro servlet e gli intercettori, questo modello è implementato con le azioni e la vista è una combinazione di tipi di risultati e risultati. Lo stack di valori e OGNL forniscono un filo conduttore, collegando e consentendo l'integrazione tra gli altri componenti.
Oltre ai componenti di cui sopra, ci saranno molte informazioni relative alla configurazione. Configurazione per l'applicazione web, nonché configurazione per azioni, intercettori, risultati, ecc.
Questa è la panoramica dell'architettura del pattern MVC di Struts 2. Esamineremo ogni componente in modo più dettagliato nei capitoli successivi.
Richiedi ciclo di vita
Sulla base del diagramma sopra, puoi comprendere il flusso di lavoro attraverso il ciclo di vita della richiesta dell'utente in formato Struts 2 come segue -
L'utente invia una richiesta al server per richiedere alcune risorse (es. Pagine).
Il Filter Dispatcher esamina la richiesta e quindi determina l'azione appropriata.
Si applicano funzionalità di intercettazione configurate come convalida, caricamento di file ecc.
L'azione selezionata viene eseguita in base all'operazione richiesta.
Anche in questo caso, gli intercettori configurati vengono applicati per eseguire qualsiasi post-elaborazione, se necessario.
Infine, il risultato viene preparato dalla visualizzazione e restituisce il risultato all'utente.