Java 中的 XML: 数据绑定,第 1 部分:代码生成方法 — JAXB 及其它
2010-03-25 00:00:00 来源:WEB开发网核心提示: 用 JAXB 根据 Schema 描述生成代码非常简单,所提供的绑定编译器 xjc 是一个命令行工具,Java 中的 XML: 数据绑定,第 1 部分:代码生成方法 — JAXB 及其它(7),它将 Schema 文档作为输入,将文件生成到指定的输出包和目标目录,您可以为 JAXB 所定义的接口
用 JAXB 根据 Schema 描述生成代码非常简单。所提供的绑定编译器 xjc 是一个命令行工具。它将 Schema 文档作为输入,将文件生成到指定的输出包和目标目录。其中所具有的选项还使用户可以控制生成的代码文件是否是只读的,以及是否严格验证 Schema 描述。
通过使用绑定声明,JAXB 规范定义了一些方法来定制生成数据绑定的一些方面。包括:
用于控制所生成类的名称和属性的选项
指定由绑定所使用的现有实现类的方法
允许(有限地)控制验证处理和用于编组和数据分解的序列化器/反序列化器(serializer/deserializer)的选项
要么在实际的 Schema 文档中以注释形式嵌入这些定制,要么通过使用单独的外部绑定声明文档来单独提供这些定制。参考实现的当前 beta 测试版只支持第一种方法,但在以后的发行版中将支持使用外部绑定声明文档。
总体说来,JAXB 正成为一种功能强大而灵活的工具,它用于将 Java 语言代码绑定到 W3C XML Schema 文法所定义的文档。由于有可能批准将 JAXB 作为一个 Java 平台标准,因此它将会受到广泛支持,而且在各实现之间移动绑定应用程序会象在 servlet 引擎之间移动 Web 应用程序一样容易(一般来讲,很简单,但偶尔也会有一些波折)。
然而,JAXB 确实也有一些缺点。目前最大的局限是只有用于评估用途的许可证。在该产品发行版(目前计划在这个季度发布)之前,JAXB 还无法用于实际项目中。另外,定制的程度也局限于只能应用到生成的代码。在许多情形中,您可以为 JAXB 所定义的接口定义自己的实现类,但这些接口本身总是与 Schema 描述联系在一起,不太可能进行修改。
[]
赞助商链接