-
Struts ist, wie Tomcat, Turbine und viele andere Apache-Projekte, Open-Source-Software, was einer seiner Vorteile ist. Ermöglichen Sie Entwicklern ein tieferes Verständnis des internen Implementierungsmechanismus. Das Open-Source-Framework Struts wurde entwickelt, um Entwicklern das Erstellen von Webanwendungen auf Basis der Technologien Java Servlet und JavaServer Pages (JSP) zu erleichtern. Das Struts-Framework bietet Entwicklern ein einheitliches Standard-Framework. Durch die Verwendung von Struts als Basis können sich Entwickler stärker auf die Geschäftslogik der Anwendung konzentrieren. Das Struts-Framework selbst ist eine Model-View-Controller (MVC)-Implementierung unter Verwendung der Java Servlet- und JavaServer Pages-Technologie.
Die Vorteile von Struts sind im Einzelnen:
1. Implementieren Sie das MVC-Modell mit einer klaren Struktur, sodass sich Entwickler nur auf die Implementierung der Geschäftslogik konzentrieren können.
2. Es gibt eine Fülle von Tags, die verwendet werden können. Die Struts-Tag-Bibliothek (Taglib) kann die Entwicklungseffizienz erheblich verbessern, wenn sie flexibel verwendet werden kann. Was inländische JSP-Entwickler betrifft, entwickeln sie zusätzlich zu den üblichen Tags, die mit JSP geliefert werden, selten ihre eigenen Tags. Vielleicht ist Struts ein guter Ausgangspunkt.
3. Seitennavigation wird in Zukunft eine Entwicklungsrichtung sein. Dadurch wird der Kontext des Systems klarer. Über eine Konfigurationsdatei können Sie die Verbindung zwischen verschiedenen Teilen des gesamten Systems erfassen, was für die spätere Wartung von großem Nutzen ist. Dieser Vorteil wird noch deutlicher, wenn eine andere Gruppe von Entwicklern das Projekt übernimmt.
4. Stellen Sie einen Ausnahmebehandlungsmechanismus bereit.
5. Verwaltung des Datenbankverbindungspools
6. Unterstützt I18N
Mangel:
1. Wenn Sie zur Anzeigeebene gehen, müssen Sie die Weiterleitung konfigurieren. Ich glaube, die meisten davon gehen direkt zu JSP. Wenn es zehn gibt In der Anzeigeebene von jsps müssen Sie Struts zehnmal konfigurieren. Dies schließt manchmal Verzeichnis- und Dateiänderungen ein, die eine erneute Änderung der Konfiguration erfordern Wenn es sich um ein komplexes und häufiges System handelt, ist ein solcher Vorgang unvorstellbar einfach. Das ist es jetzt. Dutzende oder Hunderte von Menschen nutzen unser System gleichzeitig online. Sie können sich vorstellen, wie besorgt ich bin.
2. Struts Action muss threadsicher sein, sodass nur eine Instanz alle Anforderungen verarbeiten kann. Daher müssen alle von Aktionen verwendeten Ressourcen einheitlich synchronisiert werden, was zu Thread-Sicherheitsproblemen führt.
3. Das Testen ist unpraktisch. Jede Aktion von Struts ist mit der Webschicht gekoppelt, sodass das Testen vom Webcontainer abhängt und auch Unit-Tests schwierig zu implementieren sind. Es gibt jedoch ein Junit-Erweiterungstool Struts TestCase, das seine Unit-Tests implementieren kann.
4. Typkonvertierung. FormBean von Struts behandelt alle Daten als String-Typ und kann das Tool Commons-Beanutils für die Typkonvertierung verwenden. Die Konvertierung erfolgt jedoch ausschließlich auf Klassenebene und der Konvertierungstyp ist nicht konfigurierbar. Es ist auch sehr schwierig, Fehlermeldungen während der Typkonvertierung an den Benutzer zurückzugeben.
5. Struts ist bei der Verarbeitung von Action zu stark auf ServletRequest und ServletResponse angewiesen, sodass der Servlet-Container nicht entfernt werden kann.
6. In Bezug auf die Front-End-Ausdruckssprache integriert Struts JSTL und verwendet daher hauptsächlich die JSTL-Ausdruckssprache zum Abrufen von Daten. Die Ausdruckssprache von JSTL ist jedoch sehr schwach im Umgang mit Sammlungs- und Indexeigenschaften.
7. Es ist schwierig, die Ausführung einer Aktion zu steuern. Wenn Struts eine Aktion erstellt, ist es sehr schwierig, deren Ausführungsreihenfolge zu steuern. Möglicherweise müssen Sie das Servlet sogar neu schreiben, um Ihre funktionalen Anforderungen zu erfüllen.
8. Verarbeitung vor und nach der Aktionsausführung. Wenn Struts Aktionen verarbeitet, ist es schwierig, Operationen vor und nach der Aktionsverarbeitung durchzuführen.
9. Unzureichende Unterstützung für Ereignisse. In Struts entspricht ein Formular tatsächlich nur einem Ereignis Das Ereignis ist im Vergleich zum Komponentenereignis ein grobkörniges Ereignis.
Das wichtige Formularobjekt von Struts, ActionForm, ist ein Objekt, das eine Anwendung darstellt. Diese Felder sind Eingabefelder im JSP-Seitenformular, da ein Formular einem Ereignis entspricht Die Granularität wird auf diese Felder im Formular verfeinert. Wenn also ein Feld einem Ereignis entspricht, ist es nicht möglich, einfach Struts zu verwenden. Dies kann natürlich auch durch die Kombination von JavaScript erreicht werden.
Dieser Artikel stammt aus dem CSDN-Blog. Bitte geben Sie beim Nachdruck die Quelle an: http://blog.csdn.net/zhrl0000/archive/2009/12/17/5027947.aspx
-