Java-XML数据绑定工具大比拼
2003-09-09 09:13
447 查看
把Java对象映射成XML文档,这是Java对象持久化的一种新思路。在XML.com的一篇文章里,作者对四种主要的Java-XML映射工具进行了全面的比较:
Breeze XML Binder, a tool produced by Breeze Factor
Castor, an open source project under ExoLab
JAXB Reference Implementation, created by SUN
XGen, a tool produced by Commerce One.
比较的标准主要有以下几条:(1)对XML大纲(schema)特性的支持程度;(2)生成Java代码的可用性;(3)Java-XML转换(以及反向转换)的工作情况。
测试的结果如下。可以看到,Sun的JAXB参考实现竟然有着绝佳的表现,不论在性能还是特性集方面,都仅次于XGen,名列第二。这让我对JAXB又多了几分信心。
1 -- Mapped if no other package name is specified.
2-- JAXB will be available as an open source project in the upcoming future. More information can be found at http://jaxb.dev.java.net/.
3 -- Only on marshaller class.
4 -- Off by default.
5 -- Some values validated.
6 -- Interfaces based on functionality instead of type of XML Schema construct.
Breeze XML Binder, a tool produced by Breeze Factor
Castor, an open source project under ExoLab
JAXB Reference Implementation, created by SUN
XGen, a tool produced by Commerce One.
比较的标准主要有以下几条:(1)对XML大纲(schema)特性的支持程度;(2)生成Java代码的可用性;(3)Java-XML转换(以及反向转换)的工作情况。
测试的结果如下。可以看到,Sun的JAXB参考实现竟然有着绝佳的表现,不论在性能还是特性集方面,都仅次于XGen,名列第二。这让我对JAXB又多了几分信心。
Feature | Breeze | Castor | JAXB RI | XGen |
Customization Disallowed | ||||
Package Name Mapped from Namespace | 1 | |||
Automatic Unmarshaling | ||||
Open Source | 2 | |||
Free of Charge | ||||
Schema Location Roundtrippable | ||||
Schema Location Settable | 3 | 3 | ||
Schemas without a Target Namespace Supported | ||||
Instance Validation on Unmarshal | 4 | |||
Constraint Check of Values on Set | 5 | |||
Value Validation when Marshaling | 5 | |||
Code Generation Command Line Tool Interface | ||||
Code Generation Programmatic Interface | ||||
Code Generation GUI Interface | ||||
Generated Code Implements Generic Interfaces | 6 |
2-- JAXB will be available as an open source project in the upcoming future. More information can be found at http://jaxb.dev.java.net/.
3 -- Only on marshaller class.
4 -- Off by default.
5 -- Some values validated.
6 -- Interfaces based on functionality instead of type of XML Schema construct.
相关文章推荐
- Java-XML数据绑定工具大比拼
- Java-XML数据绑定工具大比拼
- XML 和 Java 技术: 数据绑定的多种用法
- 从XML到Java代码的数据绑定之二
- XML 与 Java 技术: 用 Castor 进行数据绑定
- 从XML到Java代码的数据绑定之二
- 从XML到Java代码的数据绑定之一
- XML 与 Java 技术: 用 Castor 进行数据绑定
- XML 与 Java 技术: 用 Castor 进行数据绑定
- Castor以及Java和XML数据绑定
- 一个Java XML数据绑定框架的评测
- XML到Java代码的数据绑定之对象
- XML 与 Java 技术: 用 Castor 进行数据绑定
- Java 中的 XML:数据绑定,第 2 部分:性能
- 从XML到Java的数据绑定之三
- 教您如何用Zeus实现XML-Java的数据绑定
- XML 和 Java 技术: 数据绑定的多种用法
- 实用数据绑定: 往返和 XML 到 Java 的转换 3
- XML到Java代码的数据绑定之对象
- 从XML到Java代码的数据绑定之对象