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 года выпущена версия обслуживания 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:stringjava.lang.String
xsd:integerjava.math.BigInteger
xsd:positiveIntegerjava.math.BigInteger
xsd:intint
xsd:longlong
xsd:shortshort
xsd:decimaljava.math.BigDecimal
xsd:floatfloat
xsd:doubledouble
xsd:booleanboolean
xsd:bytebyte
xsd:QNamejavax.xml.namespace.QName
xsd:dateTimejavax.xml.datatype.XMLGregorianCalendar
xsd:base64Binarybyte[]
xsd:hexBinarybyte[]
xsd:unsignedIntlong
xsd:unsignedShortint
xsd:unsignedByteshort
xsd:unsignedLongjava.math.BigDecimal
xsd:timejavax.xml.datatype.XMLGregorianCalendar
xsd:datejavax.xml.datatype.XMLGregorianCalendar
xsd:gjavax.xml.datatype.XMLGregorianCalendar
xsd:anySimpleType[5] java.lang.Object
xsd:anySimpleType[6] java.lang.String
xsd:durationjavax.xml.datatype.Duration
xsd:NOTATIONjavax.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
Номер скриншота №: cf60742f5b9d09092c0f267c5c83bd3b__1721854380
URL1:https://arc.ask3.ru/arc/aa/cf/3b/cf60742f5b9d09092c0f267c5c83bd3b.html
Заголовок, (Title) документа по адресу, URL1:
Jakarta XML Binding - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)