XML Schema编辑工具:XML Spy
常见的XML绑定技术:
CASTOR
Xml for the view( +XSLT )
JAXB
XStream
XMLBeans
XGen
[b]JAXB(Java Architecture for XML Binding)[/b]:JAXB被包含在[color=red]JAVA SE 1.6[/color]中,它是一个业界的标准,是一项可以根据[color=red]XML Schema产生Java类[/color]的技术。它允许Java开发者把Java类映射到xml。
[b]JAXB提供2个主要的特性[/b]:[color=red]marshal、即把java对象打包成xml内容以及unmarshal、即把xml内容解包成java对象[/color]。这和DotNet Framework中的xsd.exe和XmlSerializer很象。
[b]使用:[/b]
[color=red]“xjc”[/color]工具可以用来将XML模式或其他类型模式文件(Java 1.6试验性地支持RELAX NG,DTD以及WSDL) 转换为Java类。Java类使用javax.xml.bind.annotation包下的Java 标注,例如@XmlRootElement和@XmlElement。XML列表序列表示为java.util.List类型的属性, 通过JAXBContext可以创建Marshallers(将Java对象转换成XML)和Unmarshallers(将XML解析为Java对 象)。
此外,JAXB包括了一个“[color=red]schemagen[/color]”工具,能够执行“xjc”的反向操作,通过一组标注的Java类创建一个XML模式。
[b]缺省的数据类型绑定[/b]:
下面的表格列出了JAXB中[color=red]XML Schema (XSD)数据类型和Java数据类型[/color]的映射。
[list]
[*]XML Schema类型 Java数据类型
[*]xsd:string java.lang.String
[*]xsd:positiveInteger 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
[/list]
常见的XML绑定技术:
CASTOR
Xml for the view( +XSLT )
JAXB
XStream
XMLBeans
XGen
[b]JAXB(Java Architecture for XML Binding)[/b]:JAXB被包含在[color=red]JAVA SE 1.6[/color]中,它是一个业界的标准,是一项可以根据[color=red]XML Schema产生Java类[/color]的技术。它允许Java开发者把Java类映射到xml。
[b]JAXB提供2个主要的特性[/b]:[color=red]marshal、即把java对象打包成xml内容以及unmarshal、即把xml内容解包成java对象[/color]。这和DotNet Framework中的xsd.exe和XmlSerializer很象。
[b]使用:[/b]
[color=red]“xjc”[/color]工具可以用来将XML模式或其他类型模式文件(Java 1.6试验性地支持RELAX NG,DTD以及WSDL) 转换为Java类。Java类使用javax.xml.bind.annotation包下的Java 标注,例如@XmlRootElement和@XmlElement。XML列表序列表示为java.util.List类型的属性, 通过JAXBContext可以创建Marshallers(将Java对象转换成XML)和Unmarshallers(将XML解析为Java对 象)。
此外,JAXB包括了一个“[color=red]schemagen[/color]”工具,能够执行“xjc”的反向操作,通过一组标注的Java类创建一个XML模式。
[b]缺省的数据类型绑定[/b]:
下面的表格列出了JAXB中[color=red]XML Schema (XSD)数据类型和Java数据类型[/color]的映射。
[list]
[*]XML Schema类型 Java数据类型
[*]xsd:string java.lang.String
[*]xsd:positiveInteger 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
[/list]