使用 JAXB 框架定制 Web 服务行为
2010-03-25 00:00:00 来源:WEB开发网@XmlType(name = "CustomizedStudent", propOrder={"name","id","age"})
public class Student {
@XmlElement(name="StudentID")
private int id;
@XmlAttribute(name="StudentAge")
private int age;
@XmlAttribute(name="StudentName",required=true)
private String name;
}
这个 Java 类在映射后的 Web 服务 schema 中会表现为:
<xs:complexType name="CustomizedStudent">
<xs:sequence>
<xs:element name="StudentID" type="xs:int"/>
</xs:sequence>
<xs:attribute name="StudentName" type="xs:string" use="required"/>
<xs:attribute name="StudentAge" type="xs:int" use="required"/>
</xs:complexType>
以上着重介绍了在 Web 服务开发中比较常用的几个 JAXB 注解来定制 Java 到 XML 的数据绑定从而达到定制 Web 服务的目的。JAXB 框架中还有丰富的注解供开发者根据实际开发需要选择使用。
自顶向下编程模型
自顶向下编程模型是指开发者从 Web 服务的 WSDL 文档开始编程,典型的过程是开发者首先根据 WSDL 文档生成服务代理类和 schema 对应的 Java 类集,这种编程模型通常用于 Web 服务客户端程序。在这种编程模型下 JAXB 主要完成从 XML schema 到 Java 类的映射,可以使用 JAXB 提供的定制声明来实现映射关系的定制。
定制声明语法
JAXB 框架提供了四种类型绑定声明:全局绑定声明、schema 绑定声明、类绑定声明、属性绑定声明,它们分别对应着绑定声明不同的作用域。
更多精彩
赞助商链接