使用 JAXB 框架定制 Web 服务行为
2010-03-25 00:00:00 来源:WEB开发网类绑定声明:XML schema 元素 / 复杂类型可能映射为一个 Java 类 / 接口,可以通过类绑定声明可以实现从 XML schema 元素 / 复杂类型到 Java 类 / 接口的映射定制。比如可以通过指定 class 的 name 属性来指定映射的 Java 类 / 接口名称等。类绑定声明只对声明的元素 / 复杂类型有效。语法格式为:
<class [ name = "className"]
[ implClass= "implClass" ] >
[ <Javadoc> ... </Javadoc> ]
</class>
属性绑定定制:XML schema 复杂数据类型引用的元素映射为 Java 类的属性,可以通过这个绑定声明可以实现从 XML schema 元素到 Java 类的属性的映射定制。比如可以通过指定 property 的 name 属性来指定映射 Java 类的属性名称,通过嵌套的 baseType 属性来指定映射 Java 类的属性类型等。语法格式为:
<property [ name = "propertyName"]
[ collectionType = "propertyCollectionType" ]
[ fixedAttributeAsConstantProperty = "true" | "false" | "1" | "0" ]
[ generateIsSetMethod = "true" | "false" | "1" | "0" ]
[ enableFailFastCheck ="true" | "false" | "1" | "0" ]
[ <baseType> ... </baseType> ]
[ <Javadoc> ... </Javadoc> ]
</property>
<baseType>
<JavaType> ... </JavaType>
</baseType>
此外 JAXB 还提供了 JavaType 绑定声明来定制 XML 数据类型和 Java 数据类型的映射。因为 XML 比 Java 提供了更丰富的数据类型,所以当 JAXB 提供的默认 XML 数据类型和 Java 数据类型映射不能满足开发实际需求时可以考虑使用这个注解来定制。映射的 Java 数据类型可以是 Java 内置类型或用户自定义类型,对于用户自定义类型必须提供编组和反编组方法。JavaType 声明可以嵌套在全局和属性绑定声明中。语法格式为:
更多精彩
赞助商链接