The following sections explain the default schema-to-Java and Java-to-schema data type bindings.
Schema-to-Java Mapping
The Java language provides a richer set of data type than XML schema. Table lists the mapping of XML data types to Java data types in JAXB.
XML Schema Type
|
Java Data Type
|
---|---|
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
|
Java-to-Schema Mapping
Table shows the default mapping of Java classes to XML data types.
Table JAXB Mapping of XML Data Types to Java Classes
Java Class
|
XML Data Type
|
---|---|
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
|
References
Wikipedia for Web Service