服务器模式 该模式下
HSQLDB跟其他数据库服务器一样,以服务器的形式被启动。 通过java -cp ../lib/hsqldb.jar org.hsqldb.Server -database.0 mydb -dbname.0 myDbName之类的命令启动
HSQLDB守护进程。 jdbc:hsqldb:hsql://localhost:9001/myDbName
Web服务器模式 该模式
HSQLDB以WEB服务器的形式启动,并通过HTTP协议接受客户端命令。从1.7.2开始,WEB服务器模式的
HSQLDB开始支持事务。 java -cp ../lib/hsqldb.jar org.hsqldb.WebServer -database.0 mydb -dbname.0 myDbName -
HSQLDB的下载与安装:
HSQLDB的最新版本可以通过http://hsqldb.sourceforge.net/下载。本文执笔阶段HSQLDB的最新稳定版本是:1.8.0.7。
下文以Windows环境为例,介绍怎么样安装HSQLDB。Linux环境除了目录与命令不一样之外,其余基本一样。
下载完成之后,把下载的ZIP文件解压缩至任意目录例如c:\hsqldb便完成安装。
HSQLDB服务器模式的启动方法
因为In-Process模式以及Memory-Only模式可以无需另外启动HSQLDB,下面介绍服务器模式的启动方法。
假设我们需要创建/启动一个名为mydb的数据库。
为了操作方便等,我们在c:\hsqldb目录下创建mydb目录。
1,创建runMydb.bat文件,文件内容为:
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->
java
-
cp..\lib\hsqldb.jarorg.hsqldb.Server
-
databasemydb
或
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->
java
-
cp..
/
lib
/
hsqldb.jarorg.hsqldb.Server
-
database.
0
mydb
-
dbname.
0
mydb
启动runMydb.bat命令即可
2,创建manageMydb.bat文件,内容:
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->
java
-
cp..\lib\hsqldb.jarorg.hsqldb.util.DatabaseManager
-
urljdbc:hsqldb:hsql:
//
localhost/mydb
启动manageMydb.bat,即可启动HSQLDB的图形界面管理工具
Hsqldb 的主要工具类:
org.hsqldb.util.DatabaseManager
org.hsqldb.util.DatabaseManagerSwing
org.hsqldb.util.Transfer
org.hsqldb.util.QueryTool
org.hsqldb.util.SqlTool
使用JDBC连接HSQLDB数据库
Java语言通过JDBC使用HSQLDB数据库非常简单:
1,将hsqldb.jar加入到classpath
2,通过Class.forName("org.hsqldb.jdbcDriver" );初始化hsqldb的jdbc驱动
3,通过DriverManager.getConnection(hsqldb-url, user, password);取得HSQLDB数据库的连接
使用例:
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->
try
{
Class.forName(
"
org.hsqldb.jdbcDriver
"
);
}
catch
(Exceptione){
System.out.println(
"
ERROR:failedtoloadHSQLDBJDBCdriver.
"
);
e.printStackTrace();
return
;
}
Connectionc
=
DriverManager.getConnection(
"
jdbc:hsqldb:hsql://localhost/mydb
"
,
"
sa
"
,
""
);
其中,jdbc:hsqldb:hsql://localhost/xdb需要替换为合适的jdbc-url。
有关JDBC-URL的详细描述请参考
HSQLDB的四种运行模式
在Hibernate里使用HSQLDB
著名的ORM工具Hibernate也提供了对HSQLDB数据库的支持。需要在Hibernage里使用HSQLDB,只需在hibernate.cfg.xml里加入类似如下设置:
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->
<
hibernate-configuration
>
<
session-factory
>
<
property
name
="connection.driver_class"
>
org.hsqldb.jdbcDriver
</
property
>
<
property
name
="connection.url"
>
jdbc:hsqldb:hsql://localhost/mydb
</
property
>
<
property
name
="connection.username"
>
sa
</
property
>
<
property
name
="connection.password"
></
property
>
<
property
name
="dialect"
>
org.hibernate.dialect.HSQLDialect
</
property
>
</
session-factory
>
</
hibernate-configuration
>
其余就跟其他数据库的用法一样了,这里不再详述。