Struts 2 - Architektura
Z wysokiego poziomu Struts2 to framework pull-MVC (lub MVC2). Wzorzec Model-ViewController w Struts2 jest zaimplementowany z następującymi pięcioma podstawowymi komponentami -
- Actions
- Interceptors
- Stos wartości / OGNL
- Wyniki / typy wyników
- Zobacz technologie
Struts 2 różni się nieco od tradycyjnego frameworka MVC, w którym akcja przyjmuje rolę modelu, a nie kontrolera, chociaż istnieje pewne nakładanie się.
Powyższy schemat przedstawia Model, View i Controller do architektury wysokiego poziomu Struts2. Kontroler jest zaimplementowany z rozszerzeniemStruts2wysyłania filtru serwletu, jak również przechwytywaczy, model ten jest implementowany za pomocą działań, a widok jest połączeniem typów wyników i wyników. Stos wartości i OGNL zapewniają wspólny wątek, łącząc i umożliwiając integrację między innymi komponentami.
Poza powyższymi komponentami będzie dużo informacji związanych z konfiguracją. Konfiguracja aplikacji internetowej, a także konfiguracja akcji, przechwytywaczy, wyników itp.
To jest przegląd architektury wzorca Struts 2 MVC. W kolejnych rozdziałach omówimy szczegółowo każdy element.
Żądaj cyklu życia
Na podstawie powyższego diagramu można zrozumieć przepływ pracy przez cykl życia żądań użytkownika w programie Struts 2 w następujący sposób -
Użytkownik wysyła żądanie do serwera w celu zażądania jakiegoś zasobu (np. Stron).
Dyspozytor filtru sprawdza żądanie, a następnie określa odpowiednią akcję.
Skonfigurowane funkcje przechwytywacza, takie jak walidacja, przesyłanie plików itp.
Wybrana akcja jest wykonywana na podstawie żądanej operacji.
Ponownie, skonfigurowane przechwytywacze są stosowane w celu wykonania dowolnego przetwarzania końcowego, jeśli jest to wymagane.
Na koniec wynik jest przygotowywany przez widok i zwraca wynik użytkownikowi.