Jakarta XML Binding ( JAXB ; anteriormente Java Architecture for XML Binding ) es un marco de software que permite a los desarrolladores de Java EE mapear clases Java a representaciones XML . JAXB proporciona dos características principales: la capacidad de serializar objetos Java a XML y la inversa, es decir, deserializar XML de nuevo a objetos Java. En otras palabras, JAXB permite almacenar y recuperar datos en memoria en cualquier formato XML, sin necesidad de implementar un conjunto específico de rutinas de carga y guardado de XML para la estructura de clases del programa. Es similar a xsd.exey XmlSerializeren .NET Framework .
JAXB resulta especialmente útil cuando la especificación es compleja y está en constante cambio. En tales casos, modificar periódicamente las definiciones del esquema XML para mantenerlas sincronizadas con las definiciones de Java puede ser una tarea laboriosa y propensa a errores.
JAXB es una de las API de la plataforma Jakarta EE (anteriormente Java EE), parte del Java Web Services Development Pack (JWSDP) y uno de los pilares de WSIT . También formó parte de la plataforma Java SE (en las versiones Java SE 6 a 10). A partir de Java SE 11, JAXB se eliminó. Para más detalles, consulte JEP 320 .
JAXB 1.0 se publicó en 2003, habiendo sido desarrollado bajo el Proceso de la Comunidad Java como JSR 31. [ 1 ] En 2006 se publicó JAXB 2.0 bajo JSR 222 y la Versión de Mantenimiento 2 se publicó en diciembre de 2009. [ 2 ] Las implementaciones de referencia para estas especificaciones estaban disponibles bajo la licencia de código abierto CDDL en java.net .
Uso
La herramienta " xjc " se puede utilizar para convertir XML Schema y otros tipos de archivos de esquema (a partir de Java 1.6, se admiten experimentalmente RELAX NG , XML DTD y WSDL ) a representaciones de clases. [ 3 ] Las clases se marcan utilizando anotaciones del espacio de nombres javax.xml.bind.annotation.* , por ejemplo, @XmlRootElement y @XmlElement . Las secuencias de listas XML se representan mediante atributos de tipo java.util.List . Los serializadores y deserializadores se crean a través de una instancia de JAXBContext.
Además, JAXB incluye una herramienta llamada " schemagen " que, en esencia, puede realizar la operación inversa de " xjc ", creando un esquema XML a partir de un conjunto de clases anotadas.
Enlaces de tipos de datos predeterminados
La tabla que aparece a continuación enumera las asignaciones de tipos de datos de esquema XML (XSD) a tipos de datos Java en JAXB. [ 4 ]
Versiones
Véase también
- Enlace de datos XML
- JiBX
- XMLBeans : una tecnología similar y complementaria a JAXB de la Apache Software Foundation.
- TopLink : un mapeador de objetos a relaciones y de objetos a XML de Oracle que admite JAXB 1.0.
- EclipseLink MOXy : implementación de código abierto de servicios de mapeo JAXB y XML de objetos bajo la Fundación Eclipse.
Referencias
- ↑ "JSRs: Solicitudes de especificación de Java. JSR 31: Especificación de enlace de datos XML" . Consultado el 15 de febrero de 2011 .
- ↑ "JSRs: Solicitudes de especificación de Java. JSR 222: Arquitectura de Java para enlace XML (JAXB) 2.0" . Consultado el 15 de febrero de 2011 .
- ↑ "xjc - Arquitectura Java para enlace XML" . Consultado el 15 de febrero de 2011 .
- ↑ "Uso del enlace de datos JAXB: Asignación de tipos de datos estándar" .
- ↑ para
xsd:elementeste tipo - ↑ para
xsd:attributeeste tipo - ↑ "¿Qué JAXB RI está incluido en qué JDK?" .
- ↑ "Módulo obsoleto java.xml.bind" .
- ↑ "Jaxb 2.2.8 (JDK 8)" . Archivado del original el 12 de mayo de 2015. Consultado el 1 de marzo de 2015 .
- ↑ "Java SE 7: Mejoras en la tecnología Java XML" . Consultado el 21 de marzo de 2012 .
- ↑ "Java SE 6: Características y mejoras" . Consultado el 21 de marzo de 2012 .
Enlaces externos
- Sitio web oficial. Referencia de implementación en el proyectoGlassFish.

- Página de inicio anterior de JAXB archivada el 4 de mayo de 2017 en Wayback Machine.
- Página principal original de JAXB archivada el 9 de julio de 2005 en Wayback Machine.
- Tutorial de JAXB archivado el 23/03/2013 en la Wayback Machine por Wolfgang Laun
- JSR 222 (JAXB 2.0)
- JSR 31 (JAXB 1.0)
- Tutorial de Java EE 5: Enlace entre esquemas XML y clases Java (capítulo JAXB del Tutorial de Java EE 5).
- JAXB Wizard archivado el 31/05/2012 en Wayback Machine .
- Tutoriales de JAXB
Artículos
- JAXB 2.0 ofrece una mejor vinculación XML en Java.
- Tecnologías XML y Java: Enlace de datos, Parte 2: Rendimiento
- API de Java para XML
- Solicitudes de especificación de Java