- JiBX
-
JiBX Maintainer Dennis Sosnoski Aktuelle Version 1.2.2
(15. Februar 2010)Betriebssystem plattformunabhängig Programmiersprache Java Kategorie XML-Datenbindung Framework Lizenz BSD-Lizenz jibx.sourceforge.net JiBX ist ein freies XML-Datenbindungs-Framework für Java. Damit ist ein Arbeiten mit XML-Dokumenten möglich, ohne dass der Programmierer direkt Schnittstellen zur Verarbeitung von XML wie SAX oder DOM verwenden muss. Dabei erlaubt JiBX die Verwendung beliebiger Klassenstrukturen welche an beliebige XML Dokumente gebunden werden. Dadurch unterscheidet sich JiBX von anderen Java XML Binding Frameworks wie JAXB oder XMLBeans, welche aus den XML Schemas der XML Dokumente die zu bindenden Klassen generieren, oder Apache Commons Betwixt, welches aus den zu bindenden Klassen die XML Dokumente generiert. Es ist somit das einzige Java Framework, welches eine völlige Unabhängigkeit der zu bindenden Java Klassen von den XML Dokumenten ermöglicht.
JiBX ist so entworfen, dass es diese Transformation möglichst effizient durchführt, weshalb JiBX auch zu den schnellsten XML Binding Frameworks für Java zählt.[1][2]
Inhaltsverzeichnis
Funktionsweise
JiBX basiert auf dem sogenannten "Mapped Data Binding" - d.h., beliebige Java Klassen werden mittels einer Binding Definition auf XML Dokumente gemappt. Dadurch ist es möglich, eine Architektur umzusetzen, welche die Business Objekte (Java-Klassen) von den Kommunikations- oder Persistenz-Schnittstellen (XML Dokumente) entkoppelt. Es ist somit möglich, die Java-Klassen unabhängig von den zu mappenden XML-Dokumenten zu entwickeln.
Die Konvertierung selbst erfolgt über Bytecodemanipulation der zu bindenden Klassen selbst. Es ist somit nicht notwendig, eigene Konvertierungsklassen zu erzeugen. Damit werden sowohl die Performance als auch der Speicherverbrauch des Frameworks positiv beeinflusst.[1]
Dafür stellt JiBX folgende Werkzeuge zur Verfügung:
- bindgen - Manipulation des Bytecodes der zu bindenden Klassen und Generierung des XML Schemas für diese Klassen
- codegen - Generierung von Sourcecode und manipuliertem Bytecode für zu bindende Klassen aus einem vorhandenen XML Schema
- jibx2wsdl - Generierung von JiBX Binding, WSDL, und XML Schema aus Klassen
- starter - Verwendung von Binding Definitionen für das Binden von Klassen an XML Schemas
Alternativen
- Java Architecture for XML Binding (JAXB)
- Apache XMLBeans
- Castor (Framework)
- CookXML
- XStream
- Apache Commons Betwixt
Literatur
- Dennis Sosnoski; IBM Developer Works (Hrsg.): JiBX 1.2. Part 1: Java code to XML schema. 3. März 2009, S. 11 (http://www.ibm.com/developerworks/java/tutorials/j-jibx1/, abgerufen am 26. Dezember 2009).
- Dennis Sosnoski; IBM Developer Works (Hrsg.): JiBX 1.2. Part 2: XML schema to Java code. 3. März 2009, S. 14 (http://www.ibm.com/developerworks/java/tutorials/j-jibx2/index.html, abgerufen am 26. Dezember 2009).
Weblinks
Einzelnachweise
Kategorien:- Java-Bibliothek
- XML
Wikimedia Foundation.