Heim >Java >javaLernprogramm >Jakarta-Streben lernen 1.1 (1)
Dieser Artikel ist die erste Hälfte des Artikels über Jakarta Struts 1.1. Ein Teil des Artikels stammt aus Sue Spielmans Buch „The Struts Framework: PRactical Guide for Java Programmers (Morgan-Kaufmann) / Struts Framework Java Programmer's Practical Guide“. Dieses Buch ist die erste umfassende und detaillierte Einführung in Struts 1.1 auf dem Markt. Sie können Sue unter sspielman@switchbacksoftware.com kontaktieren.
Letztes Jahr hat sich das Struts-Framework (ein Jakarta-Kaiju-Projekt) zum De-facto-Standard für die Erstellung von Webanwendungen entwickelt. Struts hat sich als zuverlässiges Framework auf Basis der MVC-Pattern-Architektur erwiesen und kann in verschiedenen Systemen eingesetzt werden. Tatsächlich musste ich mir einen Grund ausdenken, warum mein Entwicklungsteam und ich einen Zyklus damit verbrachten, ein benutzerdefiniertes MVC-Muster-Framework für das Projekt zu entwickeln. Das ist etwas unverständlich.
Struts v1.1 ist die neueste Version dieses Frameworks. Zum Zeitpunkt des Schreibens dieses Artikels befindet sich Struts v1.1 noch in der Beta2-Phase und die endgültige Version wird bald veröffentlicht. Es scheint keinen Grund zu geben, warum Sie jetzt mit der Verwendung von Version 1.1 beginnen sollten, aber warum nicht? Es gibt viele Gründe, warum wir diese Version verwenden sollten.
Dieser Artikel besteht aus zwei Teilen. Im ersten Teil stellen wir kurz die Integration und Multianwendungsunterstützung der Jakarta Universal Library vor. Der zweite Teil konzentriert sich auf verschachtelte Tag-Bibliotheken, Plug-in-APIs und Ausnahmebehandlungsdeklarationen. Die neue Version hat einige wichtige Verbesserungen am Framework vorgenommen, und Sie möchten vielleicht mit dieser Version mit der Neuentwicklung beginnen. Tatsächlich kann ich es wärmstens empfehlen. Die Aufrechterhaltung der Abwärtskompatibilität mit v1.0.2 war ein permanentes Ziel der Struts-Projektteilnehmer, und sie haben mit v1.1 großartige Arbeit geleistet. Am Ende dieses Artikels werden wir auf einige Probleme hinweisen, die beim Upgrade von v1.0.2 auf v1.1 beachtet werden müssen.
Dieser Artikel ist keine Einführung in Struts. Wir gehen davon aus, dass Sie mit den verschiedenen Komponenten dieser Architektur bereits vertraut sind. Wenn Sie sich zuerst die Einführung ansehen müssen, lesen Sie bitte die dreiteilige Einführung in das Struts-Framework, die ich geschrieben habe (http://www.onjava.com/pub/a/onjava/2001/09/11/jsp_servlets .Html).
UPDATE
Während der Entwicklung von v1.1 gab es aufregende Funktionen und Verbesserungen an Struts. Wir werden sie abwechselnd vorstellen, aber werfen wir zunächst einen Blick auf die Neuerungen.
Die Verwendung allgemeiner Jakarta-Bibliotheken wie BeanUtil und Logging;
DynaActionForms kann dynamische Aktionsformulare erstellen, ohne Code zu schreiben; Konfigurationsdateien;
Die verschachtelte Tag-Bibliothek erleichtert den Zugriff auf das verschachtelte Objektsystem auf der JSP-Seite.
Die Plug-in-API bietet erweiterte Vorlagen und Formularvalidierungsausdrücke Erweitern Sie die Funktionalität von ActionServlet;
Die Ausnahmebehandlungsdeklaration ermöglicht es Aktionen, sich nicht um alle abgefangenen Ausnahmen zu kümmern.
Schauen wir uns die einzelnen Funktionen einzeln an.
Integration gemeinsamer Jakarta-Bibliotheken
Das Struts-Toolkit kann die Probleme lösen, die beim Erstellen von Webanwendungen ständig auftreten. Die meisten Klassen in diesem Paket basieren nicht auf dem Controller-Servlet-Framework oder benutzerdefinierten Tag-Bibliotheken und können daher in der allgemeinen Java-Anwendungsprogrammierung verwendet werden. In der Struts-Version 1.1 wurden viele Klassen in diesem Paket auf die öffentlichen Projekte von Jakarta portiert. Zu diesen Klassen gehören Bean-Tools, Sammlungen und Digester-Pakete. Die in Struts bereitgestellte Protokollierung stammt tatsächlich aus öffentlichen Projekten. Die Komponente org.apache.commons.beanutils kapselt die Anwendungsprogrammierschnittstelle (API) Reflection and Introspection. Mithilfe von Klassen im beanutils-Paket können Sie Getter- und Setter-Methoden dynamisch aufrufen, ohne unbekannte Methodennamen zu kompilieren. Diese Klassen werden mithilfe der benutzerdefinierten Tag-Bibliothek von Struts aufgerufen, sodass zusätzliche benutzerdefinierte Tags für Ihre Anwendung definiert werden können. Möglicherweise möchten Sie mehr darüber erfahren, was in diesem Paket verfügbar ist. Tabelle 1 listet diese auf.
Tabelle 1: Gemeinsame Pakete in Struts 1.1
BeanUtils stellt JavaBeans-Eigenschaften durch Reflektion zusammen
ConvertUtils Konvertiert Zeichenfolgenwerte in Objekte bestimmter Klassen
MappedPropertyDescriptor Beschreibung und Zuordnungseigenschaften
MethodUtils Focus auf allgemeinen Methoden und nicht auf Details wie Eigenschaften
PropertyUtils verwendet die Java Reflection-API (Application Programming Interface), um Setter- (Wert festlegen) und Getter-Vorgänge (Wert abrufen) für allgemeine Eigenschaften auszuführen
Bereitgestellt vom Digester Packen Sie auf XML-Dokumenten basierende Regeln. Dies ist sehr wichtig, um die Konfigurationsdatei zu lesen, damit das Objekt korrekt initialisiert werden kann. Dieses Paket macht es Ihnen sehr einfach, Dinge zu tun, für die Sie sonst ein tieferes Verständnis der DOM- oder SAX-Verarbeitung benötigen würden. Wenn das Schema im XML validiert wird, kann dies über das Objektzuordnungsmodul erfolgen, das Regeln festlegt. Dazu gehört die Möglichkeit, Ihre eigenen Mustervergleichs-Engines einzubetten, die Handhabung legaler Namespaces und Regelsätze, die Regeln für die Verwendung in mehreren Anwendungen kapseln. Das Digester-Paket ist nützlich, wenn Sie explizit eine XML-Datei lesen, die keinem entsprechenden Java-Objekt zugeordnet werden muss.
Das Obige ist der Inhalt des Lernens von Jakarta Struts 1.1 (1). Weitere verwandte Artikel finden Sie auf der chinesischen PHP-Website (www.php.cn)!