文档

Java™教程
隐藏目录
绑定XML模式
路径: Java XML绑定(JAXB)
课程: JAXB简介

绑定XML模式

本节描述了JAXB使用的默认的XML到Java绑定。所有这些绑定都可以通过使用自定义绑定声明在全局或逐个案例中进行覆盖。有关默认JAXB绑定的完整信息,请参阅JAXB规范

简单类型定义

使用简单类型定义的模式组件通常绑定到Java属性。因为有不同类型的模式组件,所以以下Java属性属性(对于模式组件通用)包括:

Java属性的其余属性在使用简单类型定义的模式组件中指定。

默认数据类型绑定

以下各节解释了默认的模式到Java、JAXBElement和Java到模式的数据类型绑定。

模式到Java的映射

Java语言提供了比XML模式更丰富的数据类型。以下表格提供了在JAXB中将XML数据类型映射到Java数据类型的映射。

表格:JAXB映射XML Schema内置数据类型

XML Schema类型 Java数据类型
xsd:string java.lang.String
xsd:integer 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:time javax.xml.datatype.XMLGregorianCalendar
xsd:date javax.xml.datatype.XMLGregorianCalendar
xsd:g javax.xml.datatype.XMLGregorianCalendar
xsd:anySimpleType java.lang.Object
xsd:anySimpleType java.lang.String
xsd:duration javax.xml.datatype.Duration
xsd:NOTATION javax.xml.namespace.QName


JAXBElement对象

当无法通过XML内容的派生Java表示来推断XML元素信息时,提供了一个JAXBElement对象。该对象具有获取和设置对象名称和对象值的方法。

Java到Schema的映射

以下表格显示了Java类到XML数据类型的默认映射。

表格:JAXB XML数据类型到Java类的映射

Java类 XML数据类型
java.lang.String xs:string
java.math.BigInteger xs:integer
java.math.BigDecimal xs:decimal
java.util.Calendar xs:dateTime
java.util.Date xs:dateTime
javax.xml.namespace.QName xs:QName
java.net.URI xs:string
javax.xml.datatype.XMLGregorianCalendar xs:anySimpleType
javax.xml.datatype.Duration xs:duration
java.lang.Object xs:anyType
java.awt.Image xs:base64Binary
javax.activation.DataHandler xs:base64Binary
javax.xml.transform.Source xs:base64Binary
java.util.UUID xs:string

上一页: 表示XML内容
下一页: 自定义生成的类和Java程序元素