首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >XML生成与XML数据库

XML生成与XML数据库
EN

Stack Overflow用户
提问于 2010-08-13 03:06:52
回答 2查看 183关注 0票数 0

目前,我正在使用Hibernate来持久化应用程序中的实体,并以XML的形式将这些实体返回给我的用户。然而,这意味着每次请求资源时,我当前都是通过Java生成XML,这是无效的,原因有很多。我想知道我是否想在应用程序运行时创建文档对象的缓存(即,将所有对象也作为文档对象批量加载),或者除了MySQL/Hibernate之外,还可能使用基于XML的数据库……

EN

回答 2

Stack Overflow用户

发布于 2010-08-13 03:15:06

您可以使用任何缓存解决方案--比如EhcacheOSCache

  • 当客户端请求XML时,如果在缓存中找不到该文档,则搜索缓存(假设是通过实体的id )
  • ,从DB中获取该文档并将其转换为xml,然后将其存储在缓存中,并在每次修改实体时返回
  • ,使其缓存条目无效

但在执行此操作之前,请对生成时消耗多少CPU以及这种情况发生的频率进行实际基准测试,并将其与拥有缓存所需的内存进行比较。

票数 2
EN

Stack Overflow用户

发布于 2010-08-13 03:58:46

以防万一,请注意Hibernate允许处理XML数据。从Chapter 18. XML Mapping

XML允许您以与处理持久性

相同的方式处理持久性XML。解析后的XML树可以看作是在对象级别表示关系数据的另一种方式,而不是POJO。

Hibernate支持dom4j作为操作XML树的API。您可以编写从数据库中检索dom4j树的查询,并将对树所做的任何修改自动同步到数据库中。您甚至可以使用dom4j解析XML文档,并使用Hibernate的任何基本操作将其写入数据库: persist()、saveOrUpdate()、merge()、delete()、replicate() (尚不支持合并)。

此功能有许多应用程序,包括数据导入/导出、通过JMS或SOAP外部化实体数据以及基于XSLT的报告。

可以使用单个映射将类的属性和XML文档的节点同时映射到数据库,或者,如果没有要映射的类,则可以只映射XML。

我不确定这是否能满足您的需求(而且我从未使用过这个不太知名的功能)。但也许你可以看一看。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3471087

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档