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
- A JAXB Tutorial by Wolfgang Laun
- JSR 222 (JAXB 2.0)
- JSR 31 (JAXB 1.0)
- JAXB chapter of the Java EE 5 Tutorial
- JAXB Wizard Архівовано 31 травня 2012 у Wayback Machine.