Jump to content

Джакарта XML-привязка

Джакарта XML-привязка
Репозиторий
Написано в Ява
Веб-сайт проекты .затмение .org /проекты /ee4j .jaxb-impl Отредактируйте это в Викиданных

Jakarta XML Binding ( JAXB ; ранее Java Architecture for XML Binding ) — это программная платформа , которая позволяет разработчикам Java EE сопоставлять классы Java с представлениями XML . JAXB предоставляет две основные функции: возможность маршалинга Java объектов в XML и обратного преобразования, т. е. демаршалинга XML обратно в объекты Java. Другими словами, JAXB позволяет хранить и извлекать данные в памяти в любом формате XML без необходимости реализации определенного набора процедур загрузки и сохранения XML для структуры классов программы. Это похоже на xsd.exe и XmlSerializer в .NET Framework .

JAXB особенно полезен, когда спецификация сложна и меняется. В таком случае регулярное изменение определений схемы XML для обеспечения их синхронизации с определениями Java может занять много времени и привести к ошибкам.

JAXB — это один из API-интерфейсов платформы Jakarta EE (ранее Java EE), часть пакета разработки веб-служб Java (JWSDP) и одна из основ WSIT . Он также был частью платформы Java SE (в версии Java SE 6–10). Начиная с Java SE 11, JAXB был удален. Подробности см. в JEP 320 .

JAXB 1.0 был выпущен в 2003 году и был разработан в рамках процесса сообщества Java как JSR 31. [ 1 ] В 2006 году JAXB 2.0 был выпущен под номером JSR 222, а в декабре 2009 года выпущена версия Maintenance Release 2. [ 2 ] Эталонные реализации этих спецификаций были доступны по лицензии CDDL с открытым исходным кодом на java.net .

Использование

[ редактировать ]

Инструмент " xjc » можно использовать для преобразования XML-схемы и других типов файлов схем (начиная с Java 1.6, RELAX NG , XML DTD и WSDL поддерживаются экспериментально) в представления классов. [ 3 ] Классы размечаются с использованием аннотаций из пространство имен javax.xml.bind.annotation.* , например, @XmlRootElement и @XmlElement . Последовательности списков XML представлены атрибутами типа java.util.Список . Маршаллеры и демаршаллеры создаются с помощью экземпляра JAXBContext.

Кроме того, JAXB включает в себя " Schemagen "инструмент, который может по существу выполнить обратное " xjc », создавая XML-схему из набора аннотированных классов.

Привязки типов данных по умолчанию

[ редактировать ]

В таблице ниже перечислены сопоставления типов данных XML-схемы (XSD) с типами данных Java в JAXB. [ 4 ]

Тип XML-схемы Тип данных Java
xsd:string java.lang.String
xsd:integer java.math.BigInteger
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[ 5 ] java.lang.Object
xsd:anySimpleType[ 6 ] java.lang.String
xsd:duration javax.xml.datatype.Duration
xsd:NOTATION javax.xml.namespace.QName
  • Java SE 9: JAXB 2.3.0 [ 7 ] (в модуле java.xml.bind; этот модуль помечен как устаревший [ 8 ] )
  • Java SE 8: JAXB 2.2.8 [ 9 ]
  • Java SE 7: JAXB 2.2.3 (JSR 222, версия обслуживания 2) [ 10 ]
  • Java SE 6: JAXB 2.0 (JSR 222) [ 11 ]

См. также

[ редактировать ]
  1. ^ «JSR: запросы спецификации Java. JSR 31: спецификация привязки данных XML» . Проверено 15 февраля 2011 г.
  2. ^ «JSR: запросы спецификации Java. JSR 222: архитектура Java для привязки XML (JAXB) 2.0» . Проверено 15 февраля 2011 г.
  3. ^ «xjc — архитектура Java для привязки XML» . Проверено 15 февраля 2011 г.
  4. ^ «Использование привязки данных JAXB: стандартное сопоставление типов данных» .
  5. ^ для xsd:element этого типа
  6. ^ для xsd:attribute этого типа
  7. ^ «Какой JAXB RI включен в какой JDK?» .
  8. ^ «Устаревший модуль java.xml.bind» .
  9. ^ «Jaxb 2.2.8 (JDK 8)» . Проверено 01 марта 2015 г.
  10. ^ «Java SE 7: Улучшения технологии Java XML» . Проверено 21 марта 2012 г.
  11. ^ «Java SE 6: Возможности и улучшения» . Проверено 21 марта 2012 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 6e0027eea9c643814bf345f950d0745f__1721854380
URL1:https://arc.ask3.ru/arc/aa/6e/5f/6e0027eea9c643814bf345f950d0745f.html
Заголовок, (Title) документа по адресу, URL1:
Jakarta XML Binding - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)