国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

Hsqldb簡介和使用方法

開發 后端
Hsqldb是一個開放源代碼的JAVA數據庫,其具有標準的SQL語法和JAVA接口,它可以自由使用和分發,非常簡潔和快速的。

Hsqldb是一個開放源代碼的JAVA數據庫,其具有標準的SQL語法和JAVA接口,它可以自由使用和分發,非常簡潔和快速的。具有Server模式,進程內模式(In-Process)和內存模式(Memory-Only)三種。運行Hsqldb需要hsqldb.jar包, 它包含了一些組件和程序。每個程序需要不同的命令來運行。它位于項目的lib目錄下,目前的版本是1.8.0.5。官方的下載地址是:http://prdownloads.sourceforge.net/hsqldb/hsqldb_1_8_0_5.zip?download

在介紹這些模式之前我們需要了解一些Hsqldb所涉及的一些文件。每個Hsqld數據庫包含了2到5個命名相同但擴展名不同的文件,這些文件位于同一個目錄下。例如,名位"test"的數據庫包含了以下幾個文件:

•test.properties

•test.script

•test.log

•test.data

•test.backup

properties文件描述了數據庫的基本配置。 script文件記錄了表和其它數據庫對象的定義。log文件記錄了數據庫最近所做的更新。data文件包含了cached(緩沖)表的數據,而backup文件是將data文件壓縮備份,它包含了data文件上次的最終狀態數據。所有這些文件都是必不可少的,千萬不可擅自刪除。但如果你的數據庫沒有緩沖表(cached table),test.data和test.backup文件是不會存在。

接下來我們對Hsqldb的三種模式進行簡單介紹,同時包括部分工具的啟動的方式。

一、 Server模式

Server模式提供了最大的可訪問性。應用程序(客戶端)通過Hsqldb的JDBC驅動連接服務器。在服務器模式中,服務器在運行的時候可以被指定為最多10個數據庫。根據客戶端和服務器之間通信協議的不同,Server模式可以分為以下三種:

1、 Hsqldb Serve

這種模式是首選的也是最快的。它采用HSQLDB專有的通信協議。啟動服務器需要編寫批處理命令。Hsqldb提供的所有工具都能以java class歸檔文件(也就是jar)的標準方式運行。假如hsqldb.jar位于相對于當前路徑的../lib下面。我們的命令將這樣寫:

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

現在你可能會疑惑,[-database.0 ]、 [dbname.0]為什么在后面加[0]。_... ...我們不是在前面說服務模式運行的時候可以指定10個數據庫嗎,如有多個數據庫,則繼續寫命令行參數-database.1 aa -dbname.1 aa -database.2 bb-dbname.2 bb ... ...

新建文本文件保存上面命令,文件名可以隨意,將后綴名改成bat,然后直接執行批處理文件即可。在以后介紹的執行啟動工具的命令采用同樣方法。

上面啟動服務器的命令啟動了帶有一個(默認為一個數據庫)數據庫的服務器,這個數據庫是一個名為"mydb.*"文件,這些文件就是mydb.Properties、mydb.script、mydb.log等文件。其中demoDB是mydb的別名,可在連接數據庫時使用。

2、 Hsqldb Web Server

 這種模式只能用在通過HTTP協議訪問數據庫服務器主機,采用這種模式唯一的原因是客戶端或服務器端的防火墻對數據庫對網絡連接強加了限制。其他情況下,這種模式不推薦被使用。

 運行web服務器的時候,只要將剛才命令行中的主類(main class)替換成:org.hsqldb.WebServer

3、 Hsqldb Servlet

這種模式和Web Server一樣都采用HTTP協議,當如Tomcat或Resin等servlet引擎(或應用服務器)提供數據庫的訪問時,可以使用這種模式。但是Servlet模式不能脫離servlet引擎獨立啟動。為了提供數據庫的連接,必須將HSQLDB.jar中的hsqlServlet類放置在應用服務器的相應位置。

Web Server和Servlet模式都只能在客戶端通過JDBC驅動來訪問。Servlet模式只能啟動一個單獨的數據庫。請注意做為應用程序服務器的數據庫引擎通常不使用這種模式。

連接到以Server模式運行的數據庫

當HSQLDB服務器運行時,客戶端程序就可以通過hsqldb.jar中帶有的HSQLDB JDBC Driver連接數據庫。

java 代碼

  1. try{      
  2.      
  3.         Class.forName("org.hsqldb.jdbcDriver") ;      
  4.     
  5. }catch(ClassNotFoundException e){      
  6.      
  7.         e.printStackTrace();        
  8.     
  9.  }      
  10.      
  11.      Connection c = DriverManager.getConnection("jdbc:hsqldb:hsql://localhost/xdb""sa""");      
  12.     

注:hsqldb的默認用戶是sa密碼為空。修改默認密碼的方法我們將在工具使用部分做出介紹。

二、 In-Process模式

In-Process模式又稱Standalone模式。這種模式下,數據庫引擎作為應用程序的一部分在同一個JVM中運行。對于一些應用程序來說, 這種模式因為數據不用轉換和通過網絡的傳送而使得速度更快一些。其主要的缺點就是默認的不能從應用程序外連接到數據庫。所以當應用程序正在運行的時候,你不能使用類似于Database Manager的外部工具來查看數據庫的內容。在1.8.0版本中,你可以從同一個JVM的一個線程里面來運行一個服務器實例,從而可以提供外部連接來訪問你的In-Process數據庫。

推薦的使用In-Process模式方式是:開發的時候為數據庫使用一個HSQLDB 服務器實例,然后在部屬的時候轉換到In-Process內模式。

一個In-Process模式數據庫是從JDBC語句開始啟動的,在連接URL中帶有指定的數據庫文件路徑作為JDBC的一部分。例如,假如數據庫名稱為testdb,它的數據庫文件位于與確定的運行應用程序命令相同的目錄下,下面的代碼可以用來連接數據庫:

Connection c = DriverManager.getConnection("jdbc:hsqldb:file:testdb

數據庫文件的路徑格式在Linux主機和Windows主機上都被指定采用前斜線("/")。所以相對路徑或者是相對于相同分區下相同目錄路徑的表達方式是一致的。使用相對路徑的時候,這些路徑表示的是相對于用于啟動JVM的shell命令的執行路徑。

三、Memry-Only數據庫

Memory-Only數據庫不是持久化的而是全部在隨機訪問的內存中。因為沒有任何信息寫在磁盤上。這種模式通過mem:協議的方式來指定:

Connection c = DriverManager.getConnection("jdbc:hsqldb:mem:dbName", "sa", "");

你也可以在server.properties中指定相同的URL來運行一個Memory-Only(僅處于內存中)服務器實例。

注意事項:當一個服務器實例啟動或者建立一個in-process數據庫連接的時候,如果指定的路徑沒有數據庫存在,那么就會創建一個新的空的數據庫。這個特點的副作用就是讓那些新用戶產生疑惑。在指定連接已存在的數據庫路徑的時候,如果出現了什么錯誤的話,就會建立一個指向新數據庫的連接。為了解決這個問題,你可以指定一個連接屬性ifexists=true只允許和已存在的數據庫建立連接而避免創建新的數據庫,如果數據庫不存在的話,getConnection()方法將會拋出異常。

四、 工具的使用

Hsqldb提供的主要的工具類:

•org.hsqldb.util.DatabaseManager

•org.hsqldb.util.DatabaseManagerSwing

•org.hsqldb.util.Transfer

•org.hsqldb.util.QueryTool

•org.hsqldb.util.SqlTool

其中DatabaseManage和Sql Tool,只能用命令行參數來運行。你可以在命令行后面加上參數-?來查看這些工具可用的參數列表。其他工具可以通過DatabaseManager的主界面啟動,便于交互式操作。

為了便于操作,我們同樣把這些工具啟動的命令做成批處理文件。方法和前面我們所介紹的創建啟動服務模式命令的方法一樣。在這里我們再強調一次hsqldb.jar的位置,因為所有啟動命令都是參照hsqldb.jar的位置編寫的

如果您覺得麻煩你也可以采用絕對路徑編寫命令。

現在我們一起運行AWT版本的DatabaseManager工具,hsqldb.jar位于相對于當前路徑的../lib下面,命令如下:

Java -cp ../lib/hsqldb.jar org.hsqldb.util.DatabaseManager

將命令保存為后綴名為bat的批處理文件,保存為DatabaseManager.bat,也可根據個人習慣命名。執行DatabaseManager.bat你將看到如下畫面:。

現在對這個簡潔的登錄界面做個簡單的介紹*_*

•Recent:選擇你最近的登錄方案,[可選]

•Setting Name:本次登錄方案名稱,如果本次登錄成功,那么等你下次登錄的時候在Recent下拉列表中將看到你的成功登錄方案[可選]

•Type:登錄模式,其中包括In-Memory模式、Standalone(In-process)模式、Server模式、WebServer模式... ...[必選]

•Driver:連接數據庫的驅動程序[必選]

•URL:連接數據庫的URL[必選]

•User:用戶名[必選]

•Password:密碼[ 除非密碼為空]

注:如果Type項選擇Server模式或者WebServer模式需要你事先啟動與之對應的服務模式。而Standalone(In-process)默認是不支持DatabaseManager連接的,具體原因我們已經在前面解釋過。至于In-Memory可以隨意登錄,所有的操作數據都不會記錄在本地磁盤。而Type還有很多其他選項,具體的用法可以參考官方文檔,位置在hsqldb目錄\doc\guide\ guide.pdf。

如果你想運行DatabaseManagerSwing也很簡單,相信你已經想到了。我們只需要把啟動DatabaseManager命令修改成:

Java -cp ../lib/hsqldb.jar org.hsqldb.util. DatabaseManagerSwing

兩種工具的操作方法類似,這里就不再贅述。

差點忘記,前面我說過要給出修改sa用戶密碼的方法。最后再占用大家一點點時間。當你用SA通過DatabaseManager登錄成功后會出現如下界面:

在右上方的空白區域輸入set password "newpassword" 點擊執行即可。

到這里我們對Hsqldb的簡單介紹就結束了。

本文參考自Hsqldb的官方文檔,個人水平有限難免出現錯誤。

【編輯推薦】

  1. Eclipse尋找JVM(JRE)順序機制
  2. 深入學習JVM內存設置原理和調優
  3. JAVA字節碼文件操作技巧
  4. 巧解使Eclipse崩潰的JVM terminated問題
  5. 解決JVM Terminated.ExitCode=-1問題行之有效的方法
責任編輯:金賀 來源: ITEYE博客
相關推薦

2017-08-18 14:01:44

大數據dataWrangle

2009-11-24 09:26:31

pbr策略路由

2013-07-15 15:12:40

iOS多線程NSOperationNSOperation

2010-09-24 17:08:03

SQL Server唯

2011-02-24 13:09:10

FireFTP

2012-01-13 09:55:54

jQuery

2014-05-06 10:20:02

2009-12-24 16:36:06

WPF InkCanv

2018-06-20 10:34:56

堆棧iOSswift

2012-03-06 10:17:45

iOS SQLite3iOSSQLite3

2023-02-08 08:40:21

2011-05-20 17:05:59

ADO.NET

2011-09-07 10:36:58

ubuntuUbuntuOne

2009-06-02 14:24:32

Hibernate單元測試HSQLDB

2009-12-31 16:04:39

ADO.NET技術

2010-02-22 18:46:31

2009-08-21 18:00:38

ASP.NET mac

2009-12-28 13:28:03

WPF視頻

2010-05-28 19:12:09

MySQL使用方法

2011-04-27 16:38:31

投影機
點贊
收藏

51CTO技術棧公眾號

国内成人精品2018免费看| 日韩加勒比系列| **欧美大码日韩| 免费日本视频一区| 99久久99久久精品国产片果冰| 污污网站在线看| 国产小黄视频| 亚洲一区影院| 成人免费福利视频| 一本色道久久综合狠狠躁篇怎么玩 | 久久久不卡网国产精品一区| 亚洲激情网址| 日韩成人精品一区二区| 小说区图片区亚洲| 日本在线观看高清完整版| 四虎国产精品永远| 免费成人看片| 能看的毛片网站| 黄网站色视频免费观看| 免费h精品视频在线播放| 91精品免费久久久久久久久| 欧美精品激情在线观看| 另类美女黄大片| 日韩在线视频观看正片免费网站| 日韩av在线影院| 精品久久久久久最新网址| 67194成人在线观看| 91精品福利在线一区二区三区| 欧美日免费三级在线| 色婷婷综合久色| 欧美色视频一区| 欧美日韩国产高清一区二区| 91久久精品日日躁夜夜躁欧美| 欧美特级www| 欧美日韩不卡在线| 91精品国产综合久久久久久久| 欧美日韩国产天堂| 日韩一级大片在线观看| 亚洲风情亚aⅴ在线发布| 亚洲福利在线视频| 亚洲天堂免费在线| 久久精品中文字幕电影| 久久99久久亚洲国产| 国产成人亚洲综合青青| 国产日本欧美一区二区三区| 97碰碰视频| 亚洲人成77777| 国产h视频在线播放| 国产成人综合美国十次| 久久久久国产精品嫩草影院 | 中文字幕在线一二| 麻豆影视国产在线观看| 黄瓜视频成人app免费| 精品一区二区三区亚洲| 在线一级成人| 99国产精品私拍| 国产91在线观看| 亚洲一区二区av电影| 欧美va在线播放| 韩剧1988免费观看全集| 久久国产亚洲精品无码| av中字幕久久| 亚洲女同另类| 韩国av一区二区三区在线观看| 久久一区二区三区四区| 无码av免费一区二区三区试看| 日韩欧美成人一区二区| 久久久久中文字幕| 六月婷婷久久| 韩国中文字幕av| 污视频网站在线免费| www.欧美视频| 亚洲在线成人| 欧美国产一区在线| 制服丝袜成人动漫| 日本成人激情视频| 中文字幕一区二区三区最新| 国产午夜在线| 午夜精品久久久久久毛片| 欧美区亚洲区| 国产日韩av一区二区| 精品国产一区二区三区不卡| 韩国三级电影久久久久久| 亚洲欧美日韩在线综合| 神马亚洲视频| 国产在线不卡一区二区三区| av不卡在线| 一区二区免费在线| 久久精品中文字幕一区| 欧美黑人在线观看| 青草在线视频在线观看| 亚洲精品美女91| 亚洲mv在线观看| 日产日韩在线亚洲欧美| 日韩av一二三四| 日韩漫画puputoon| 秋霞影院一区二区| 日本道精品一区二区三区| 黑人巨大精品欧美一区二区免费| 青青久久aⅴ北条麻妃| 伊人春色在线| 国产精品中文有码| 久久精品.com| 国产高清一区视频| 欧美性猛片xxxx免费看久爱| 大西瓜av在线| 欧美色片在线观看| 一区二区成人在线视频| 97成人超碰免| 亚洲爆乳无码精品aaa片蜜桃| caoporn免费在线| 国产综合色精品一区二区三区| 亚洲美女在线视频| 欧美a v在线播放| 成人豆花视频| 国产日韩欧美精品综合| 91成人伦理在线电影| 亚洲我射av| 亚洲黄色性网站| 一本一道久久a久久精品综合| 亚洲精品在线播放| 在线播放/欧美激情| 一区二区三区免费看| 粉嫩91精品久久久久久久99蜜桃| 午夜亚洲福利老司机| 免费看的黄色大片| 91视视频在线直接观看在线看网页在线看| 99视频精品免费| 国产精品久久二区二区| 97影院理论午夜| 亚洲欧洲成人自拍| 日本高清不卡一区二区三| 日韩精品一区二区三区中文字幕| 怡红院av一区二区三区| 国产在线高清精品| heyzo在线播放| 亚洲国产一区二区三区青草影视 | 亚洲美女少妇撒尿| 国产三区精品| 亚洲精品三区| 日韩欧美在线视频日韩欧美在线视频| 国产福利久久精品| 欧美日韩女优| 欧美午夜女人视频在线| 蜜桃视频网站www| 欧美国产一区在线| 国产精品久久久久久久乖乖| 日韩欧美中文字幕在线视频 | 国产欧美精品日韩| 日韩国产精品91| 337p亚洲精品色噜噜狠狠p| 狠狠色狠狠色综合| 香艳视频网站| 亚洲欧美视频一区| 欧美vide| 中文字幕一区二区三区精华液| 中文字幕一区二区三区四区五区人| 亚洲深夜福利在线观看| 欧美老女人xx| 精品国产午夜肉伦伦影院| 在线观看成人黄色| 亚洲1024| 91啪亚洲精品| 香蕉视频免费版| 欧美一级一区| 国产精品视频1区| 伊人久久亚洲| 国产99久久精品一区二区| 午夜先锋成人动漫在线| 日本成人在线视频网址| 女海盗2成人h版中文字幕| 中文字幕国产日韩| 色在线视频网| 国产精品一区二区三区四区| 久久久久亚洲精品国产| 国产一区二区三区福利| 国产又黄又大久久| 国产999精品久久久| 在线免费三级电影网站| 中文字幕精品一区二区三区精品| 99一区二区三区| 久久精品一级| 精品捆绑美女sm三区| 国产精品中文字幕久久久| 国产免播放器视频| 日本欧美大码aⅴ在线播放| 91成品人片a无限观看| 快射av在线播放一区| 99riav一区二区三区| 亚洲精品视频一区二区三区| 免费一区二区| 亚洲精品国产精品国自产在线| 日本精品一区二区三区四区| 午夜亚洲性色福利视频| 国产美女精品在线观看| 欧美男男freegayvideosroom| 欧美喷潮久久久xxxxx| 在线看的黄色网址| 国产精品丝袜一区| 亚洲高清精品中出|