HSQLDB安裝與使用

  HSQLDB是一個輕量級的純Java開發的開放源代碼的關係數據庫系統。由於HSQLDB的輕量(佔用空間小),使用簡單,支持內存運行方式等特色,HSQLDB被普遍用於開發環境和某些中小型系統中。
HSQLDB的運行須要Java環境的支持。html

HSQLDB的四種運行模式:
運行模式 說明 啓動命令 JDBC例

內存java

(Memory-Only)sql

模式數據庫

全部數據都在內存裏操做。應用程序退出後則數據被銷燬。

啓動方式1:經過程序中首次調用服務器

Connection c = DriverManager.getConnection("jdbc:hsqldb:mem:myDbName", session

 "sa", "");時工具

啓動方式2:你也能夠在server.properties中指定相同的URL來運行一個Memory-Only(僅處於內存中)服務器實例。url

jdbc:hsqldb:mem:myDbName

進程spa

(In-Process).net

模式

從應用程序啓動數據庫。由於全部數據被寫入到文件中,因此即便應用程序退出後,數據也不會被銷燬。

跟Memory-Only模式同樣,

In-Process不須要另外啓動,經過DriverManager.getConnection(jdbcUriName, "sa", "");方式既可啓動

jdbc:hsqldb:

file:/C:/mydb/myDbNamejdbc:hsqldb:

file:/opt/db/myDbNamejdbc:hsqldb:

file:myDbName

服務器模式 該模式下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://sourceforge.net/projects/hsqldb/下載。本文執筆階段HSQLDB的最新穩定版本是:1.8.0.7。
下文以Windows環境爲例,介紹怎麼樣安裝HSQLDB。Linux環境除了目錄與命令不同以外,其他基本同樣。
下載完成以後,把下載的ZIP文件解壓縮至任意目錄例如c:/hsqldb便完成安裝。

HSQLDB服務器模式的啓動方法

由於In-Process模式以及Memory-Only模式能夠無需另外啓動HSQLDB,下面介紹服務器模式的啓動方法。
假設咱們須要建立/啓動一個名爲mydb的數據庫。
爲了操做方便等,咱們在c:/hsqldb目錄下建立mydb目錄。
1,建立runMydb.bat文件,文件內容爲:
java -cp ../lib/hsqldb.jar org.hsqldb.Server -database mydb


java -cp ../lib/hsqldb.jar org.hsqldb.Server -database.0 mydb -dbname.0 mydb

 
啓動runMydb.bat命令便可

2,建立manageMydb.bat文件,內容:
java -cp ../lib/hsqldb.jar org.hsqldb.util.DatabaseManager -url jdbc: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數據庫的鏈接

使用例:

 try { Class.forName("org.hsqldb.jdbcDriver" ); } catch (Exception e) { System.out.println("ERROR: failed to load HSQLDB JDBC driver."); e.printStackTrace(); return; } Connection c = 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里加入相似以下設置:

<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>
其他就跟其餘數據庫的用法同樣了,這裏再也不詳述。
相關文章
相關標籤/搜索