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.
Neueste Kommentare
Noch keine Kommentare zu Rangierbahnhof für Daten: Verbesserte Java-XML-Bindung mit JAXB 2.0
Kommentar hinzufügenVielen Dank für Ihren Kommentar.
Ihr Kommentar wurde gespeichert und wartet auf Moderation.