使用 JAXB 框架定制 Web 服务行为
2010-03-25 00:00:00 来源:WEB开发网JAXB 与 Web 服务关系
JAX-WS 型 Web 服务将 XML 和 Java 之间的绑定代理给了 JAXB 来完成,也就是说在 Web 服务调用过程中的 XML 数据和 Java 对象间转换都是由 JAXB 框架来完成的。Web 服务中接口引用的参数、返回类型等等数据类型描述都是在关联的 XML schema 中定义的,而 JAXB 框架也正是根据这个 Web 服务关联的 XML schema 来完成于 Java 对象之间的相互映射。
JAXB 框架定制支持
JAXB 规范定义了 XML schema 与 Java 的标准映射关系,比方说 XML 的 xsd:string 数据类型映射为 Java.lang.String,所有 JAXB 规范实现者必须实现规范所定义的标准的 XML schema 与 Java 的映射。在大多数情况下标准映射已经能满足开发者编程需要,但是不排除在一些特殊场合我们需要定制或重载 JAXB 规范定义的标准映射,比方说我们想把 xsd:string 映射到我们自己的一个 Javabean 而非标准映射里的 Java.lang.String 类,或者我们希望对 XML schema 编译器产生的 Java 类集增加 Java doc 支持,甚至定制产生的 Java 类的名字等等,这个时候我们就需要对 JAXB 标准映射进行定制。
JAXB 提供了两种方式支持从 XML schema 到 Java 的绑定定制,定制通常是以定制声明形式完成。
schema 内置注解:开发者可以通过在 XML schema 文档中用注解方式进行定制声明,这种定制方式开发者可以直观的看到定制声明的作用对象,作用域等,通常用于比较简单的绑定定制。schema 内置定制声明通常的语法格式如下:
<xs:annotation>
<xs:appinfo>
.....
binding declaration
.....
</xs:appinfo>
</xs:annotation>
更多精彩
赞助商链接