0

因此,我的 Web 应用程序主要使用 XML 进行客户端到服务器的交互,而我目前正在使用 hibernate 来持久化我的大部分后端。我知道有 XML 数据库,您可以通过使用 DOM4J 实体调用 Sessions 来使用 hibernate 保存 XML,但我不确定提供 XML 的最有效方式到底是什么。目前,每次请求对象时,我都会从对象字段生成一个 XML 文档,然后提供它。因此,对于每个新请求,我都会生成一个全新的 XML 文档。因此,我可以在第一次请求每个运行时周期期间为每个文档生成 XML,然后将其存储在对象的字段中,这样我就可以针对它运行 XSLT 命令,但这似乎效率低下。我'

4

2 回答 2

0

关系数据库的主要目的之一是避免重复。如果您有在文档之间共享的对象,并且您将其以 XML 形式存储在每个文档中,那么您必须在更改共享对象时更新所有文档。

使用 hibernate 以正常的关系方式存储文档对象字段是非常标准的做法,并使用一些 XML 编组器将其转换为 XML 并返回,例如 xstream 或 CXF。

于 2011-12-06T22:21:48.370 回答
0

您可以将 XML 作为 CLOB 或 BLOB 存储在数据库中。如果您在查询时不需要查看文档内部,您可以将关键字段外部化并根据这些字段查询 XML。

于 2010-08-05T20:34:16.097 回答