Rangierbahnhof für Daten: Verbesserte Java-XML-Bindung mit JAXB 2.0

Für das Unmarshalling eines XML-Dokuments erstellt man aus dem Kontext einen Unmarshaller. Der Unmarshaller kann XML-Daten aus unterschiedlichsten Datenquellen verarbeiten. Das sind zum Beispiel Dateien, Input-Streams, URLs, DOM-Objekte, SAX-Parser und so weiter.

Für das nächste Codebeispiel muss zuerst ein JAXBContext-Kontext-Objekt erstellt werden. Das Kontext-Objekt ist der Ausgangspunkt für alle Marshalling-, Unmarshalling- und Validierungsoperationen.

Es folgt ein einfaches File-Objekt, das auf das XML-Dokument verweist. Der Unmarshaller gibt ein typisiertes JAXBElement zurück, von dem man per Unmarshalling mit der Methode getValue() das entsprechende Objekt erhalten kann:

Das Marshalling umfasst die Umwandlung von Java-Klassen in das XML-Format. In JAXB 2.0 ist es einfach, diese Java-Klassen zu erstellen und zu verarbeiten. Wie das folgende Beispiel zeigt, kann XML wie eine normale Klasse behandelt werden, entsprechend dem zugehörigen XML-Schema.

Sobald das Domänenobjekt initialisiert ist, verwendet man den JAXB-Kontext, um ein Marshaller-Objekt sowie ein typisiertes JAXBElement zu erstellen. Sodann wird ein JAXBElement-Objekt erstellt, das das Domänenobjekt einkapselt. Das typisierte JAXBElement entspricht dabei dem Wurzelelement complexType des XML-Dokuments. Anschließend lässt sich die generierte ObjectFactory-Klasse wie folgt verwenden:

Weitere Informationen:

Wer mehr zu diesem Thema wissen möchte, sollte einen Blick auf die Website des JAXB 2.0 Reference Implementation Project werfen.

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

Google stopft schwerwiegende Sicherheitslöcher in Chrome 124

Zwei Use-after-free-Bugs stecken in Picture In Picture und der WebGPU-Implementierung Dawn. Betroffen sind Chrome für…

6 Tagen ago

Studie: 91 Prozent der Ransomware-Opfer zahlen Lösegeld

Die durchschnittliche Lösegeldzahlung liegt bei 2,5 Millionen Dollar. Acht Prozent der Befragten zählten 2023 mehr…

6 Tagen ago

DMA: EU stuft auch Apples iPadOS als Gatekeeper ein

Eine neue Analyse der EU-Kommission sieht vor allem eine hohe Verbreitung von iPadOS bei Business-Nutzern.…

6 Tagen ago

Chips bescheren Samsung deutlichen Gewinnzuwachs

Das operative Ergebnis wächst um fast 6 Billionen Won auf 6,64 Billionen Won. Die Gewinne…

6 Tagen ago

Chrome: Google verschiebt das Aus für Drittanbietercookies

Ab Werk blockiert Chrome Cookies von Dritten nun frühestens ab Anfang 2025. Unter anderem gibt…

1 Woche ago

BAUMLINK: Wir sind Partner und Aussteller bei der Frankfurt Tech Show 2024

Die Vorfreude steigt, denn BAUMLINK wird als Partner und Aussteller bei der Tech Show 2024…

1 Woche ago