Jakarta Commons - Die Standard-Bibliotheken von Apache verstehen und anwenden
Buchausgabe: 32,90€
Download-Version: 28,00€
(Preis inkl. Mwst. )
| Autor(en): | Henrik Hörning, Reidar Hörning, Torsten Curdt, Stefan Edlich |
| Verlag: | entwickler.press |
| Version: | 1. Auflage, 2005 |
| Umfang: | 367 Seiten |
| Format: | PDF: 8,34MB |
| Gewicht: | 692 g |
| ISBN: | 3935042604 |
| Bestell-Nr.: | 93504260P |
| Artikeltyp: | E-Book |
Die Commons-Bibliotheken aus dem Jakarta-Projekt von Apache sind heute fester Bestandteil fast aller größeren Java-Projekte. Bekannte Frameworks wie Hibernate, Struts oder Tapestry nutzen diese Komponenten, die in den weit über zwei Dutzend Bibliotheken definiert sind. Das Spektrum reicht dabei von Spracherweiterungen (z.B. Lang und Bean Utils) wie erweiterten String-Klassen über XML-Tools (z.B. Jelly und JXPAth) bis hin zu Architekturpatterns und Datenbank- und Web-Komponenten wie beispielsweise einem File-Upload. Als ideale Ergänzung zur API ist das Buch mit zahlreichen Praxisbeispielen versehen, die die Wirkungsweise der Commons-Komponenten veranschaulichen. Der Leser wird so in die Lage versetzt, jederzeit während der Entwicklung beurteilen zu können, wo diese Bibliothek von praktischem Nutzen für das eigene Projekt ist
Leseprobe:
2 Digester (S. 37-38)
Mit Digester erhält man die Möglichkeit, Daten aus XML-Dateien auf Java-Objekte abzubilden.
2.1 Kurzbeschreibung
Geht man nach der Übersetzung, handelt es sich bei Digester um ein Verdauungsmittel. Die sinngemäße Übersetzung, bei der es sich um einen Auszug handelt oder etwas, bei dem eine Auswahl getroffen wird, kommt der Arbeitsweise von Digester da schon näher.
Am besten kann man Digester als API für das Mapping von XML zu Java-Objekten beschreiben. Das Projekt selbst bezeichnet sich als benutzerfreundliche Schnittstelle für SAX-Ereignisse1. SAX, die „Simple API for XML", ist der Quasi-Standard für das ereignisorientierte Verarbeiten von XML-Dokumenten. Tatsächlich ist die Arbeit mit Digester der mit SAX sehr ähnlich. Der Vorteil dieser Art der Verarbeitung von XML liegt darin, dass nicht erst ein kompletter Baum im Speicher aufgebaut werden muss, der sehr ressourcenintensiv ist. Bei enorm großen Dokumenten kann es unter Umständen sogar zwingend nötig sein, diese Alternative zu DOM (Document Object Model) zu nutzen.
Ursprünglich wurde Digester entwickelt, um die Konfigurationsdateien des Struts- Frameworks auszuwerten. Erst später stellte man fest, dass dieses Mapping von allgemeinem Interesse ist, und verlagerte es zu den Jakarta Commons. Derzeit kommt Digester in vielen Commons-Projekten selbst zur Anwendung. So wird es z.B. zum Auslesen von XML-Dateien bei Configuration benutzt, und Betwixt, ein Vice-versa-XML zu Beans Mapper, bedient sich ebenfalls seiner Fähigkeiten.
2.2 Abhängigkeiten
Möchte man das Projekt nutzen, muss man folgende Projekte der Jakarta Commons ebenfalls in den Klassenpfad einbinden:
• Beanutils Package, ab Version 1.5
• Collections Package, ab Version 2.1
• Commons Logging Package, ab Version 1.0.2
2.3 Funktionsweise
Wem eine eingehende Beschreibung an dieser Stelle zu langwierig ist, der möge sich nach kurzem Überfliegen der folgenden Seiten dem Schnelleinstieg am Ende dieses Kapitels zuwenden. Dieser befasst sich nur rudimentär mit dem Thema und erschließt die Herangehensweise am Quelltext orientiert.
Digester erzeugt beim Parsen von XML-Daten Java-Objekt-Bäume. Die Struktur der Daten ist (fast immer) ausschlaggebend für den Aufbau des Objektgraphen. Digester arbeitet dazu ereignisorientiert. Das heißt, es muss eine Möglichkeit geschaffen werden, Ereignisse zu definieren und diesen dann eine bestimmte Reaktion zuzuweisen. Das Projekt löst diese Anforderung so: Die Definition erfolgt in so genannten Regeln, die Muster aufnehmen. Diese Muster werden Pattern genannt und passen genau auf die Elemente (Elementpfade) in einem XML-Dokument, zu denen man ein Ereignis erwartet. Die Reaktion, die sich auf ein solches Ereignis einstellt, ist z.B. das Erzeugen eines Objektes oder der Aufruf einer Methode.
Je nach Wunsch kann das unter Beachtung von Namensräumen, mit und ohne Validierung der XML-Datei geschehen.
Der besondere Tipp
Denken Sie nicht an einen blauen Elefanten!
Anhand verblüffender Experimente und einfacher Übungen lernen Sie, wie unsere Umwelt die Gedanken und die Gedanken unsere Umwelt beeinflussen.
Früher: 12,00€
bei uns nur: 4,99€

