dummies
 

Suchen und Finden

Titel

Autor/Verlag

Inhaltsverzeichnis

Nur ebooks mit Firmenlizenz anzeigen:

 

JAXB 2.0 - Ein Programmiertutorial für die Java Architecture for XML Binding

Samuel Michaelis, Wolfgang Schmiesing

 

Verlag Carl Hanser Fachbuchverlag, 2006

ISBN 9783446409156 , 399 Seiten

Format PDF, OL

Kopierschutz Wasserzeichen

Geräte

27,99 EUR

Für Firmen: Nutzung über Internet und Intranet (ab 2 Exemplaren) freigegeben

Derzeit können über den Shop maximal 500 Exemplare bestellt werden. Benötigen Sie mehr Exemplare, nehmen Sie bitte Kontakt mit uns auf.


 

6 Java zu XML-Schema (S. 193)

Eine der großen Neuerungen der Version 5 von Java sind die Annotationen. Informationen zu Java-Elementen, die bisher nur in Kommentaren oder getrennten Dateien gespeichert wurden, können nun direkt im Java-Quelltext aufgenommen werden und sind mit den Mitteln der Reflection-API programmatisch verfügbar.

Nicht alle Entwickler haben diese Neuerung mit Begeisterung begrüßt – es ist abzusehen, dass tausendundeine API sich der Annotationen mehr oder weniger geschickt annehmen werden – und statt der ach so einfach verständlichen POJOs wird es vielleicht bald von MAJOs wimmeln, „Massively Annotated Java Objects". Die Version 2.0 der Java Architecture for XML Binding bedient sich ausgiebig der Annotationen und in diesem Fall, wie wir finden, auf verführerisch praktische Art und Weise. In den vorherigen Kapiteln war stets ein XML-Schema Gegenstand des Beispiels und wie man ein Java-Datenmodell daraus zaubern kann. In diesem Kapitel beschäftigen wir uns mit dem Rückweg, den Annotationen sei Dank, und zwar wie wir von einem Java- Datenmodell passendes XML erzeugen können, indem wir für die einzelnen Java- Elemente durch die entsprechenden JAXB-Annotationen definieren, wie das Element in XML abgebildet werden soll.

Dieser Weg zurück ist das Besondere der JAXB 2.0. Während in früheren Versionen das aus einem XML-Schema erzeugte Java-Datenmodell nicht mit sinnvollem Aufwand für ein anderes XML-Schema angepasst werden konnte, bemüht sich die Version 2.0 um eine bidirektionale Abbildung von XML-Schema auf Java. Diese Abbildung mag vielleicht noch nicht in jedem Fall astrein sein – funktioniert in der Regel aber erstaunlich gut, wie wir in den kommenden Abschnitten darstellen werden.

Nun unterscheiden sich Java und XML-Datenstrukturen erheblich voneinander. Wo in Java eine Java Bean-Eigenschaft definiert ist, kann im XML ein Attribut, ein Element oder ein verschachtelter Datentyp stehen. Während in Java die Reihenfolge der definierten Java Bean-Eigenschaften irrelevant ist, muss für XML die Reihenfolge von Unterelementen explizit festgelegt (oder freigelassen) werden. Daher ist es für viele Fälle notwendig, die gewünschte Abbildung zu konfigurieren.

Im vorigen Teil des Buches haben wir uns mit den Bindungskonfigurationen befasst, die unmittelbar an einem XML-Schema hängen und dort diese Konfigurationen vorhalten. Das folgende Kapitel wird sich nun mit den Konfigurationen beschäftigen, die wir per Annotationen an Klassen, Variablen und Methoden anfügen können, um so eine bestimmte Form der Abbildung von Java in ein XML-Format zu erzielen. Die Annotationen der JAXB stellen im Moment einen Großteil der in der Java 5 Core API definierten Annotationen dar. Die Annotationen sind im Paket javax. xml.bind.annotations zusammengefasst.

Aufbau des Kapitels

Nutzung der API ohne ein vorgegebenes Schema
Einfache Elementkonfigurationen
Elementlisten, Referenzen und Elementmischung
Enumerationen
Eigene Typbindungen definieren
Mit unbekannten XML-Elementen und Attributen arbeiten
Objektgraphen in XML abbilden
Elemente über Factory-Klassen definieren