使用 JAXB 框架定制 Web 服务行为
2010-03-25 00:00:00 来源:WEB开发网schema 外部绑定定制文件:开发者可以把定制声明编写在一个单独的文件中,然后在编译 schema 时指定这个定制文件,这类定制文件通常以 .xjb 扩展名命名。这种方式便于 schema 定制声明的集中化管理。外部绑定定制文件中的定制声明通常的语法格式如下:
<jxb:bindings>
<jxb:bindings>
<binding declaration>
<jxb:bindings>
</jxb:bindings>
从 Java 到 XML schema 的映射开发者可以通过 JAXB 提供的注解来完成,在编程 Java 类时可以使用 JAXB 丰富的注解轻松地完成绑定定制。
开发者可以在全局、schema、组件等不同层次上进行进行定制声明,相应不同的声明作用域。
使用 JAXB 框架定制 Web 服务
自底向上编程模型
自底向上编程模型是指开发者从编写 Java 类开始,然后将之发布为 Web 服务。自底向上编程模型通常在 Web 服务提供方被采用,开发者在 Java 类的开发过程中可以使用 Java 注解来完成对 Web 服务的行为定制。
JAXB 框架提供了丰富的注解供开发者使用来完成从 Java 类开始定制 Web 服务,当然这个定制局限在数据绑定层面上。在这种编程模型中 JAXB 主要完成从 Java 类到 XML schema 的映射。JAX-WS 规范本身也定义了若干注解用于 Web 服务的基础行为定制 ( 比方说服务名称,命名空间等 )。本文我们重点关注如何利用 JAXB 来定制 Web 服务,因此下面我们主要结合 Webshpere 应用服务器 Web 服务实现来介绍一些在编程中常用的注解并介绍相应的 Web 服务行为。
@XmlRootElement
@XmlRootElement 注解用于标注类或枚举类型,用它标注的类在映射后的 schema 中会以一个全局元素的形式出现,元素的类型是一个包含 Java 类属性的 XML 复杂数据类型。我们可以通过 @XmlRootElement 注解的 name 属性来定制映射的 schema 全局元素的名称,一般来说以 @XmlRootElement 标注的类在相应的 XML 文档中会以最外层或根节点形式出现。比方说有如下标注类:
更多精彩
赞助商链接