<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    開(kāi)源俱樂(lè)部

    開(kāi)源框架
    前言:該文章只是簡(jiǎn)單介紹一下hsql的入門(mén)內(nèi)容,如果想仔細(xì)了解的話,參考官方幫助文檔最為有用。

    一、簡(jiǎn)介:
    hsql數(shù)據(jù)庫(kù)是一款純Java編寫(xiě)的免費(fèi)數(shù)據(jù)庫(kù),許可是BSD-style的協(xié)議,如果你是使用Java編程的話,不凡考慮一下使用它,相對(duì)其他數(shù)據(jù)庫(kù)來(lái)說(shuō),其體積小,才563kb。僅一個(gè)hsqldb.jar文件就包括了數(shù)據(jù)庫(kù)引擎,數(shù)據(jù)庫(kù)驅(qū)動(dòng),還有其他用戶界面操作等內(nèi)容。在Java開(kāi)源世界里,hsql是極為受歡迎的(就Java本身來(lái)說(shuō)),JBoss應(yīng)用程序服務(wù)器默認(rèn)也提供了這個(gè)數(shù)據(jù)庫(kù)引擎。由于其體積小的原因,又是純Java設(shè)計(jì),又支持SQL99,SQL2003大部分的標(biāo)準(zhǔn),所以也是作為商業(yè)應(yīng)用程序展示的一種選擇。請(qǐng)到以下地址下載hsql:
    http://prdownloads.sourceforge.net/hsqldb/hsqldb_1_7_3_3.zip?download
    二、使用hsql數(shù)據(jù)庫(kù):
    1、hsql數(shù)據(jù)庫(kù)引擎有幾種服務(wù)器模式:常用的Server模式、WebServer模式、Servlet模式、Standlone模式、Memory-Only數(shù)據(jù)庫(kù)。
    2、最為常用的Server模式:
    1)首先卻換到lib文件夾下,運(yùn)行java -cp hsqldb.jar org.hsqldb.Server -database.0 db/mydb -dbname.0 xdb
    執(zhí)行命令后,將會(huì)在db文件夾下創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)mydb,別名(用于訪問(wèn)數(shù)據(jù)庫(kù))是xdb,如果存在mydb數(shù)據(jù)庫(kù),將會(huì)打開(kāi)它。
    2)運(yùn)行數(shù)據(jù)庫(kù)界面操作工具:java -cp hsqldb.jar org.hsqldb.util.DatabaseManager
    在Type選項(xiàng)里選上相應(yīng)的服務(wù)器模式,這里選擇HSQL Database Engine Server模式;Driver不用修改;URL修改為jdbc:hsqldb:hsql://localhost/xdb (主要這里xdb就是上面我們?cè)O(shè)置的別名);user里設(shè)置用戶名,第一次登錄時(shí),設(shè)置的是管理員的用戶名,password設(shè)置密碼。然后點(diǎn)擊Ok。
    3)第一次運(yùn)行數(shù)據(jù)庫(kù)引擎,創(chuàng)建數(shù)據(jù)庫(kù)完畢。好了,你可以打開(kāi)db文件夾,會(huì)發(fā)現(xiàn)里面多了幾個(gè)文件。
    mydb.properties文件:是關(guān)于數(shù)據(jù)庫(kù)的屬性文件。
    mydb.script:hsql主要保存的表(這里按hsql的說(shuō)法是Memory表,就是最為常用的),里面的格式都是文本格式,可以用文本查看,里面的語(yǔ)句都是sql語(yǔ)句,熟悉sql語(yǔ)句的話,你也可以手動(dòng)修改它。每次運(yùn)行數(shù)據(jù)庫(kù)引擎的話都是從這里加載進(jìn)內(nèi)存的。
    mydb.lck表示數(shù)據(jù)庫(kù)處于打開(kāi)狀態(tài)。
    其他的請(qǐng)參看hsqldb包里的手冊(cè)。

    3、WebServer模式和Server運(yùn)行模式基本一樣,只是支持了Http等協(xié)議,主要用于防火墻,默認(rèn)端口是9001。啟動(dòng)Server,java -cp hsqldb.jar org.hsqldb.WebServer ...剩余的和上面的一致。

    4、Servlet模式可以允許你通過(guò)Servlet容器來(lái)訪問(wèn)數(shù)據(jù)庫(kù),請(qǐng)查看
    hsqlServlet.java的源代碼,和WebServer類似。

    5、另一個(gè)值得思考的模式是
    Standalone模式:不能通過(guò)網(wǎng)絡(luò)來(lái)訪問(wèn)數(shù)據(jù)庫(kù),主要是在一個(gè)JVM中使用,那樣的話,訪問(wèn)的速度會(huì)更加快。雖然文檔里面提到主要是用于開(kāi)發(fā)時(shí)使用,但是我們可以假設(shè)一下,該方法不需要一個(gè)引擎類的東西,而類似于打開(kāi)文件的方式,返回一個(gè)Connection對(duì)象:
    Connection c = DriverManager.getConnection("jdbc:hsqldb:file:mydb", "sa", "");
    將會(huì)在當(dāng)前目錄找到mydb數(shù)據(jù)庫(kù)相關(guān)文件,打開(kāi)并返回一個(gè)Connection對(duì)象。該方式有點(diǎn)好處就是可以不使用引擎,在需要的時(shí)候操作數(shù)據(jù)。所以那些對(duì)數(shù)據(jù)庫(kù)不是特別有要求的,但又需要一個(gè)操作數(shù)據(jù)庫(kù)的方式的話,可以使用這種方法。對(duì)于那些不想額外在數(shù)據(jù)庫(kù)引擎花費(fèi)金錢(qián)的話,可以使用這種方法。但是不推薦使用該方法。記得Hibernate里SessionFactory可以使用openSession(Connecttion c)來(lái)獲得一個(gè)Session對(duì)象的,因此,在測(cè)試或者實(shí)際應(yīng)用的話都可以這樣使用。

    6、Memory-Only 數(shù)據(jù)庫(kù):顧名思義,主要是內(nèi)存中使用,不用于保存數(shù)據(jù)。可以用于在內(nèi)存中交換數(shù)據(jù)。

    三、具體的鏈接與操作的話,和一般的JDBC操作一樣。而相應(yīng)的Server模式的話,連接地址主要你運(yùn)行數(shù)據(jù)庫(kù)界面操作工具時(shí),在URL一欄時(shí)默認(rèn)已經(jīng)設(shè)好了,自己實(shí)習(xí)一下,對(duì)比其中參數(shù)。


    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 性生大片视频免费观看一级| 美女视频黄a视频全免费网站一区| 国产情侣久久久久aⅴ免费| 亚洲成a人片在线观看久| 免费在线观看一区| 亚洲精品国产日韩| 毛片免费vip会员在线看| 亚洲欧美精品午睡沙发| 免费久久精品国产片香蕉| 成人免费夜片在线观看| 亚洲综合精品网站| 精品人妻系列无码人妻免费视频| 亚洲乱亚洲乱妇无码麻豆| 久久久精品免费视频| 免费被黄网站在观看| 国产亚洲精品欧洲在线观看| 亚洲国产综合无码一区二区二三区| 国产成人精品免费视频大全| 久久久久亚洲精品成人网小说| 亚洲一区二区免费视频| 亚洲色大成WWW亚洲女子| 亚洲国产精品第一区二区三区| a在线免费观看视频| 亚洲91精品麻豆国产系列在线 | 亚洲免费一级视频| 日韩成人免费aa在线看| 国产精品成人69XXX免费视频| 亚洲国产精品久久久久婷婷软件| 好先生在线观看免费播放| 特级毛片全部免费播放| 久久精品亚洲精品国产色婷| 在线观看人成视频免费| 精品97国产免费人成视频 | 久久久久久久免费视频| 一级做性色a爰片久久毛片免费| 久久亚洲私人国产精品| 免费看的成人yellow视频| 中文字幕免费在线视频| 国产人成亚洲第一网站在线播放| 久久久无码精品亚洲日韩软件| 免费专区丝袜脚调教视频|