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.
Zwei Use-after-free-Bugs stecken in Picture In Picture und der WebGPU-Implementierung Dawn. Betroffen sind Chrome für…
Die durchschnittliche Lösegeldzahlung liegt bei 2,5 Millionen Dollar. Acht Prozent der Befragten zählten 2023 mehr…
Eine neue Analyse der EU-Kommission sieht vor allem eine hohe Verbreitung von iPadOS bei Business-Nutzern.…
Das operative Ergebnis wächst um fast 6 Billionen Won auf 6,64 Billionen Won. Die Gewinne…
Ab Werk blockiert Chrome Cookies von Dritten nun frühestens ab Anfang 2025. Unter anderem gibt…
Die Vorfreude steigt, denn BAUMLINK wird als Partner und Aussteller bei der Tech Show 2024…