2009-07-07 7 views
0

Gibt es etwas Ähnliches zu .NET xsd.exe für Java - Generieren von Klassen aus einem Schema, das Sie einfach deserialisieren können? - oder, Was ist das übliche Verfahren zum Parsen und Herausziehen/Validieren der XML-Dokumente in Java?xsd.exe/XMLSerializer für Java?

Das Verfolgen eines DOM-Baums und des Littering-Codes mit XPath-Abfragen, um die Daten zu erhalten, die Sie benötigen, scheint ziemlich unordentlich zu sein.

Antwort

5

Sie suchen ein Framework für die Datenbindung für XML. Die beliebtesten sind JAXB, JiBX und XmlBeans. Sie alle ermöglichen es Ihnen, ein XML-Schema zu verwenden und eine Reihe von Java-Klassen zu generieren. Außerdem verfügen Sie über eine Laufzeitkomponente, die zu und von XML und Objekten serialisiert/deserialisiert.

Keine von ihnen ist der klare Gewinner, sie haben jeweils ihre Stärken. JAXB ist jetzt als Teil von Java 6 enthalten, also wäre das meine Standardauswahl.

+0

XStream ist ziemlich gut, abgesehen von der fehlenden Namespace-Unterstützung. – duffymo

+0

Korrigieren Sie mich, wenn ich falsch liege, aber XStream hat keine Fähigkeit zur Codegenerierung, es ist nur für leichtes Objekt-zu-XML-Streaming. – skaffman