JAXB
Java Архітектура для XML Binding (JAXB) дозволяє розробникам відображати(ставити у відповідність) класи Java у XML файли. JAXB має дві основні властивості: здатність створювати класи Java з XML і навпаки - створювати XML файли з класів Java.
JAXB особливо корисна, коли специфікація є складною і часто змінюється.
JAXB є частиною платформи Java SE і одним з інтерфейсів API у платформі Java EE, також є частиною Java Web Services Development Pack (JWSDP).
JAXB 1.0 був розроблений в рамках Java Community Process як JSR31. У 2006 році JAXB 2.0 розробляється в рамках JSR 222.
Інструмент "xjc" може бути використаний для конвертації XML Schema а також ряду інших схем(з версії Java 1.6 підтримуються експериментально RELAX NG, XML DTD, так WSDL) у класи Java.
Таблиця показує відповідність типів даних XML до типів даних Java в JAXB. [1]
XML Schema Type | Java Data Type |
---|---|
xsd:string | java.lang.String |
xsd:positiveInteger | java.math.BigInteger |
xsd:int | int |
xsd:long | long |
xsd:short | short |
xsd:decimal | java.math.BigDecimal |
xsd:float | float |
xsd:double | double |
xsd:boolean | boolean |
xsd:byte | byte |
xsd:QName | javax.xml.namespace.QName |
xsd:dateTime | javax.xml.datatype.XMLGregorianCalendar |
xsd:base64Binary | byte[] |
xsd:hexBinary | byte[] |
xsd:unsignedInt | long |
xsd:unsignedShort | int |
xsd:unsignedByte | short |
xsd:unsignedLong | java.math.BigDecimal |
xsd:time | javax.xml.datatype.XMLGregorianCalendar |
xsd:date | javax.xml.datatype.XMLGregorianCalendar |
xsd:g | javax.xml.datatype.XMLGregorianCalendar |
xsd:anySimpleType (for xsd:element of this type) | java.lang.Object |
xsd:anySimpleType (for xsd:attribute of this type) | java.lang.String |
xsd:duration | javax.xml.datatype.Duration |
xsd:NOTATION | javax.xml.namespace.QName |
- ↑ Using JAXB Data Binding: Standard Data Type Mapping. Архів оригіналу за 13 липня 2013. Процитовано 4 червня 2011.
- JAXB home page Reference Implementation on Project GlassFish
- previous JAXB home page [Архівовано 31 серпня 2005 у Wayback Machine.]
- A JAXB Tutorial by Wolfgang Laun
- JSR 222 [Архівовано 26 січня 2021 у Wayback Machine.] (JAXB 2.0)
- JSR 31 [Архівовано 10 липня 2017 у Wayback Machine.] (JAXB 1.0)
- JAXB chapter of the Java EE 5 Tutorial [Архівовано 7 лютого 2009 у Wayback Machine.]
- JAXB Wizard [Архівовано 31 травня 2012 у Wayback Machine.]
- Generate an XML Document from an Object Model with JAXB 2 [Архівовано 29 жовтня 2020 у Wayback Machine.]
- JAXB 2.0
- XML and Java technologies: Data binding, Part 2: Performance [Архівовано 11 березня 2011 у Wayback Machine.]