要用应用程序打包的最轻的数据库

Yat*_*oel 16 java database embedded orm hibernate

我正在开发一个Java桌面应用程序,并希望light database可以使用它,Hibernate并且可以使用应用程序打包.

我打算用Derby数据库.它的大小接近2 MB.但在此之前,我希望得到有关SO的专家意见.

它会合作Hibernate吗?

实际上,我是Hibernate的新手并且正在研究它需要Dialect一个数据库,所以Hibernate是否有方言Derby

Pas*_*ent 19

JavaDB(Sun支持开源Apache Derby的分发),HSQLDB(非常活跃)和H2(HSQLDB后继者)都是100%Java嵌入式数据库引擎,并且可以与Hibernate一起使用(即有方言) .请参考这个网页这一个.

HSQLDB具有所有这些中最小的占用空间(~700 KB).但功能明智(参见此比较),H2是明显的赢家,它的足迹(~1 MB)仍然小于Derby的一个(~2 MB).

最终的选择取决于你需要什么,但H2是一个很好的功能和尺寸折衷(换句话说,一个伟大的竞争对手).看看上面提到的比较.

  • @Yatendra 1.是的,你可以(http://www.h2database.com/html/license.html)2.Firebird和SQLite是好产品,但不是100%Java(即不能在同一个Java进程中运行)和这会让事情变得更复杂.我会去H2. (5认同)

Daf*_*aff 7

我推荐HSQLDB.它体积小,速度快,运行时可以很好地运行Hibernate.Hibernate也有Derby DB的方言(虽然我没有使用它,但我认为Hibernate还没有正式支持).

  • 没有HSQLDB*可以作为内存数据库运行,但您也可以将数据保存在磁盘上(它基本上只是一个配置设置). (3认同)