Streben 2 - Architektur
Struts2 ist ein Pull-MVC-Framework (oder MVC2-Framework). Das Model-ViewController-Muster in Struts2 wird mit den folgenden fünf Kernkomponenten implementiert:
- Actions
- Interceptors
- Wertestapel / OGNL
- Ergebnisse / Ergebnistypen
- Technologien anzeigen
Struts 2 unterscheidet sich geringfügig von einem herkömmlichen MVC-Framework, bei dem die Aktion eher die Rolle des Modells als des Controllers übernimmt, obwohl es einige Überschneidungen gibt.
Das obige Diagramm zeigt die Model, View und CEin Controller für die Struts2-High-Level-Architektur. Die Steuerung ist mit a implementiertStruts2Dispatch-Servlet-Filter sowie Interceptors. Dieses Modell wird mit Aktionen implementiert. Die Ansicht ist eine Kombination aus Ergebnistypen und Ergebnissen. Der Wertestapel und OGNL bieten einen gemeinsamen Thread, der die Integration zwischen den anderen Komponenten verknüpft und ermöglicht.
Abgesehen von den oben genannten Komponenten gibt es viele Informationen, die sich auf die Konfiguration beziehen. Konfiguration für die Webanwendung sowie Konfiguration für Aktionen, Interceptors, Ergebnisse usw.
Dies ist die Architekturübersicht des Struts 2 MVC-Musters. Wir werden jede Komponente in den folgenden Kapiteln genauer durchgehen.
Lebenszyklus anfordern
Anhand des obigen Diagramms können Sie den Arbeitsablauf über den Anforderungslebenszyklus des Benutzers in verstehen Struts 2 wie folgt -
Der Benutzer sendet eine Anforderung an den Server, um eine Ressource (dh Seiten) anzufordern.
Der Filter Dispatcher überprüft die Anforderung und ermittelt dann die entsprechende Aktion.
Es gelten konfigurierte Interceptor-Funktionen wie Validierung, Datei-Upload usw.
Die ausgewählte Aktion wird basierend auf der angeforderten Operation ausgeführt.
Auch hier werden konfigurierte Interceptors angewendet, um bei Bedarf eine Nachbearbeitung durchzuführen.
Schließlich wird das Ergebnis von der Ansicht vorbereitet und gibt das Ergebnis an den Benutzer zurück.