5

我正在将 XML 文件的导入函数写入我的 Java 应用程序。我正在使用XOM来解析 XML 文件。解析XML的代码不太好理解,有些硬编码.getChild(3)等等。与声明性 XML 文档相比,很难遵循代码。

难道没有更易于维护的方式将 XML 文档解析为 Java 对象吗?我想以一种更具声明性的方式来使用它,我可以在其中指定哪些标签对应于哪些 Java 类。

4

7 回答 7

3

看看 JAX/B - 相当简单的基于注释的方法。这是一个标准的Java API。

有一些工具可以从 XSD 或示例 XML 文件生成带注释的 Java 类。我在我的博客中描述了我对它的使用

于 2010-08-16T17:02:54.680 回答
2

我真的很喜欢将 XML 转换为 Java 的Simple

于 2010-08-16T21:15:49.577 回答
1

看看Apache Commons Digester

于 2010-08-16T17:01:23.357 回答
1

同意的 JAXB (JSR-222)是最好的解决方案。请注意,JAXB 是一个规范,这意味着您可以选择实现:

标准 JAXB 允许您通过注释指定映射,MOXy JAXB还允许您通过 XML 指定元数据:

如果您想要一个可维护的解决方案,您需要打破几乎所有 XML 绑定解决方案中的 XML 元素之间的一对一关系,并使用 MOXy 中使用的基于 XPath 的映射:

于 2010-08-16T20:06:44.007 回答
1

Simple XML 框架在字段和方法声明以及类定义上使用注释来将 XML 映射到 Java 并返回。它的轻量级是 JAXB 的许多倍(它会引入大量依赖项)。事实上,它根本没有外部依赖。而且它也更快。我多次尝试 JAXB,但发现注释和功能笨拙且麻烦。查看教程

于 2010-11-23T00:34:02.450 回答
0

检查Castor XML 映射

这是相同的文档:http: //www.castor.org/xml-mapping.html

于 2010-08-16T16:59:44.420 回答
0

我终于找到了易于使用并以声明方式解析 XML 的XStream 。

于 2010-11-08T10:24:51.743 回答