(只能设法找到这一个的其他问题 - Object persistence strategy for desktop application)我有一个基本的Java Swing应用程序持久化策略进行单机桌面Java应用程序
- 这需要访问/持续几千年的POJO。我可能需要对这些进行基本查询。
最初我看了JPA-Hibernate + HSQLDB,但是这会减慢应用程序的启动时间,我认为这对我的查询需求来说是过度的。
我简化了我的数据模型,并开始查看文档数据库--mongodb很棒,但它并不适合非服务器环境;启动和关闭从Java(使用ProcessBuilder)的mongod进程是很烦琐的,我真的想要一个嵌入式解决方案。
我真的很想拥有一个快速,轻量级的持久化工具,它具有可嵌入Java应用程序的基本查询功能。
这些是唯一的选择吗?
- http://prevayler.org/
- Java的嵌入式数据库(HSQL)没有ORM
- 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更适合这类问题。 – Viruzzo 2012-03-01 13:16:27
几年前,我在一个项目中使用了H2。一定要喜欢它的简单和易于安装。 – jere 2012-03-02 12:45:54
我已经开始使用OrientDB的文档数据库,目前它已经很适合。 – 2012-03-02 14:32:32