日期:2014-05-16  浏览次数:20356 次

推荐一个好的小工具----HSQLDB

很久以前就听说过有一个纯Java的数据,由于时间长了,忘了它的名字,今天终于与“故人”重逢。最近一直在做Hibernate缓存方面的工作,所以就拿来了Hibernate的文档翻了一下,复习一下已经抛在在脑后的知识。在浏览Hibernate文档时看到了关于Hibernate中的一个例子----caveatemptor,这个例子演示了Hibernate常用的一些操作,是Hibernate学习入门不可多得的例子,它用到的数据就是HSQLDB。

?

说到了这里再啰嗦几句HSQLDB的几个特点:
(1)纯Java编写、开源免费软件。
(2)支持标准SQL。这一点对与初学数据库的童鞋来说是一个很好的入门的软件。操作简单,界面简洁。没有冗余的结构和功能,是数据学习入门学习不错的工具。当然对于想学习和了解数据库的同志们来说,看看源码也会受益匪浅。
(3)这里要说说HSQLDB的局限性,HSQLDB并不是一个正式的数据库产品,如果用来做为商业应用数据库或者说开发时的数据库,个人感觉不妥。这点在HSQLDB的官方文档里也提到了。

This example application is designed for programmers who are new to the JDBC. 

?

不过对于开发者来说如果进行简单测试或者对一些程序的模块的调试它是一个不错的选择,这个就看你自己的爱好了。好了,说了这么多先看看怎么使用这个小家伙吧。

?

首先,安装HSQLDB。从官网上下载hsqldb_1_8_1_1.zip(网址就Google一下吧),解压后将其放到你常用软件的安装目录中,我将解压后的文件重命名为hsqldb(这个不会影响你的使用的,呵呵),然后放到d:\hsqldb下。这样就完成了安装的第一步了。

?

接着,我们要在环境变量中添加hsqldb.jar文件所在的路径,即在系统环境变量classpath中添加d:\hsqldb\lib\hsqldb.jar(和添加JDK环境变量类似)。这样我们就完成了HSQLDB的安装,安装好了之后我们应该如何使用呢?别急,往下看(算了,还是截图吧,清晰点)。

?

在cmd中进入到d:\hsqldb\lib\目录下,

?

这时候使用dir命令我们可以看到hsqldb.jar文件了,然后在该目录下输入:java org.hsqldb.Server命令,这样就启动了hsqldb数据库了。默认配置下数据库的启动端口为9001.你也可以在d:\hsqldb目录下创建一个server.properties的属性文件,来根据自己的需要来做相应的配置,这里就不多讲了,请参看文档。下图是hsqldb运行时的情况。

如果我们这样在Cmd中调试数据库是相当麻烦的,还好hsqldb的开发人员给我们提供了一个Swing的图形界面的管理工具。可以在cmd中启动该工具(注意启动的目录和启动hsqldb的目录相同),输入:java org.hsqldb.util.DatabaseManager,这样就启动了hsqldb的管理工具,运行界面如下:


进入到启动界面后,在Setting Name中输入任意的名字,这个名字会在Recent中保存,如果你不需要的时候可以用Recent左边的clr清除掉。然后在Type中选择“HSQL Database Engine Server”这样就创建了一个在硬盘上保存数据的数据库,点击ok进入管理界面。

?

你可以在中间的输入框中执行sql语句。Clear为清除。Excute为执行你输入的sql语句。上图中是我自己写的测试的一个数据库,呵呵。好了,hsqldb的配置和使用就这么多,希望对大伙能有帮助。为了启动和使用的时候方便,你可以把上面用到的命令用批处理文件来执行,那么每次启动的时候只要双击一下.bat文件就行了,记住在运行Java命令的时候一定要配置好你的环境变量,批处理文件的编写在网上找下吧,不是很麻烦的。