【发布时间】:2012-03-02 20:42:33
【问题描述】:
(仅设法找到关于此的另一个问题 - Object persistence strategy for desktop application)
我有一个基本的 Java Swing 应用程序 - 它需要访问/持久化几千个 POJO。我可能需要对这些运行基本查询。
最初我查看了 JPA-Hibernate + HSQLDB,但这会减慢应用程序的启动时间,而且我认为这对于我的查询要求来说是多余的。
我简化了我的数据模型并开始研究文档数据库 - mongodb 很棒,但它并不真正适合非服务器环境;从 Java 启动和关闭 mongod 进程(使用 ProcessBuilder)很麻烦,我真的想要一个嵌入式解决方案。
我真的想要一个快速、轻量级的持久性工具,它具有可以嵌入到 Java 应用程序中的基本查询功能。
这些是唯一的选择吗?
- http://prevayler.org/
- 没有 ORM 的 Java 嵌入式数据库 (HSQL)
- Java 序列化到文件系统
- JSON 是否保留为平面文件?
- XStream(和 XBird?-http://code.google.com/p/xbird/)
- OODB
- JCR 实施?
任何人都可以提供任何其他建议/建议吗?从什么时候开始序列化大量 POJO 列表会真正损害性能?
谢谢
编辑:刚刚发现这篇文章 - https://stackoverflow.com/questions/2825491/are-there-any-embeddable-document-database-engines-for-java-something-similar-t 推荐东方 - http://code.google.com/p/orient/
【问题讨论】:
-
旁注:对于这类问题,我通常会推荐 H2 而不是 HSQLDB。
-
几年前我在一个项目中使用了 H2。一定会喜欢它的简单性和易于设置。
-
我已经开始使用 OrientDB 的文档数据库,到目前为止它非常适合。
标签: java swing persistence