Arhitectură Java pentru legarea XML

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită la 17 iulie 2021; verificările necesită 2 modificări .

Java Architecture for XML Binding ( JAXB ) permite dezvoltatorilor Java să mapeze clase Java și reprezentări XML . JAXB oferă două caracteristici principale: distribuirea obiectelor Java în XML și invers, adică dezbinarea din XML înapoi la un obiect Java. Cu alte cuvinte, JAXB vă permite să stocați și să preluați date în memorie în orice format XML fără a fi nevoie să efectuați un set specific de proceduri de încărcare și salvare XML. Este similar cu XmlSerializer din .NET Framework . xsd.exe

JAXB este util în special atunci când specificația este complexă și schimbătoare. În acest caz, schimbarea constantă a schemei XML a definițiilor pentru a le menține sincronizate cu definițiile Java poate fi consumatoare de timp și predispusă la erori.

JAXB face parte din platforma Java SE și este unul dintre API -urile din platforma Java EE și face parte din Java Web Services Development Pack (JWSDP). Este, de asemenea, baza pentru WSIT . JAXB face parte din versiunea SE 1.6.

JAXB 1.0 a fost dezvoltat în cadrul procesului comunitar Java ca JSR 31. [1] Ca și în 2006, JAXB 2.0 este dezvoltat sub JSR 222. [2] Implementarea de referință pentru aceste specificații este disponibilă ca licență CDDL open source pe java.net .

Utilizare

Instrumentul xjc poate fi utilizat pentru a converti schemele XML și schemele altor tipuri de fișiere (începând cu Java 1.6, RELAX NG , XML DTD și WSDL sunt acceptate experimental) în reprezentări de clasă. [3] Clasele sunt marcate cu adnotări din spațiul de nume javax.xml.bind.annotation .* , cum ar fi @XmlRootElement și @XmlElement . Secvențele liste XML sunt reprezentate de atribute de tip java.util.List . Serializatoarele și deserializatoarele sunt create printr-o instanță JAXBContext

În plus, JAXB include un instrument „ schemagen ” care poate face în esență inversul „ xjc ”, generând o schemă XML dintr-un set de clase adnotate.

Legături implicite de tip de date

Următorul tabel listează mapările tipurilor de date XML Schema (XSD) și ale tipurilor de date Java în JAXB. [patru]

Tipul de schemă XML Tip de date Java
xsd:șir java.lang.string
xsd: întreg java.math.BigInteger
xsd:positiveInteger java.math.BigInteger
xsd:int int
xsd: lung lung
xsd: scurt mic de statura
xsd: zecimal java.math.BigDecimal
xsd:float pluti
xsd:dublu dubla
xsd: boolean boolean
xsd: octet octet
xsd:QName javax.xml.namespace.QName
xsd:dateTime javax.xml.datatype.XMLGregorianCalendar
xsd:base64Binary octet[]
xsd:hexBinary octet[]
xsd: unsignedInt lung
xsd:unsignedShort int
xsd: unsignedByte mic de statura
xsd:unsignedLong java.math.BigDecimal
xsd: timp javax.xml.datatype.XMLGregorianCalendar
xsd: data javax.xml.datatype.XMLGregorianCalendar
xsd:g javax.xml.datatype.XMLGregorianCalendar
xsd: anySimpleType (pentru elemente de acest tip) java.lang.Object
xsd: anySimpleType (pentru atribute de acest tip) java.lang.string
xsd: durata javax.xml.datatype.Duration
xsd:NOTAȚIE javax.xml.namespace.QName

Versiuni

Vezi și

Note

  1. JSR: Cereri de specificații Java. JSR 31: Specificație XML Data Binding . Consultat la 15 februarie 2011. Arhivat din original pe 11 martie 2011.
  2. JSR: Cereri de specificații Java. JSR 222: Java Architecture for XML Binding (JAXB) 2.0 . Consultat la 15 februarie 2011. Arhivat din original pe 12 februarie 2011.
  3. xjc - Java Architecture for XML Binding . Consultat la 15 februarie 2011. Arhivat din original pe 17 martie 2011.
  4. Utilizarea Legăturii de date JAXB: Maparea tipului de date standard . Preluat la 7 august 2013. Arhivat din original la 13 iulie 2013.
  5. Java SE7: Îmbunătățiri ale tehnologiei Java XML . Consultat la 21 martie 2012. Arhivat din original pe 9 martie 2012.
  6. Java SE 6: Caracteristici și îmbunătățiri . Consultat la 21 martie 2012. Arhivat din original pe 22 martie 2012.
  7. Dennis Sosnowski. Tehnologii XML și Java: Legare de date, Partea 2: Performanță . Consultat la 15 februarie 2011. Arhivat din original pe 11 martie 2011.
  8. Cadre de legare XML în contextul arhitecturii orientate pe servicii . Consultat la 15 februarie 2011. Arhivat din original pe 16 iulie 2011.

Link -uri

Articole