JAVA 項目中使用 H2 數(shù)據(jù)庫

為什么要使用H2數(shù)據(jù)庫

H2數(shù)據(jù)庫是可以嵌入到JAVA項目中的,因為只需要導(dǎo)入一個jar包即可,所以非常的方便。

項目中導(dǎo)入H2

將H2的jar包放到classpath里即可,我是用的maven,maven的配置如下

       <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
            <version>1.4.192</version>            
       </dependency>

版本我用的現(xiàn)在的最新版

然后需要修改JDBC的配置,主要是下面兩個屬性跟其他數(shù)據(jù)庫(如MySQL)不同,其他都一樣

<property name="connection.driver_class">org.h2.Driver</property>
<property name="connection.url">jdbc:h2:tcp://localhost/~/test</property>

上面jdbc:h2:tcp://localhost/~/test中的test是數(shù)據(jù)庫的名字,H2默認(rèn)如果數(shù)據(jù)庫不存在的話,會自動創(chuàng)建一個數(shù)據(jù)庫的。

我用的是hibernate,所以還要修改一下Dialect的配置

<property name="dialect">org.hibernate.dialect.H2Dialect</property>

到這為止,項目里面就可以使用H2了。

使用WEB控制臺管理H2數(shù)據(jù)庫

建表、建數(shù)據(jù)的話,可以通過H2自帶的WEB控制臺來做(當(dāng)然H2也提供命令行的方式)
WEB控制臺可以通過命令行來啟動,但為了方便,可以從H2官網(wǎng)上下載一個安裝包,運行里面的bat文件直接啟動。

H2\bin目錄

這是H2安裝完以后bin目錄下的內(nèi)容,運行h2w.bat打開web控制臺
H2 web控制臺Login畫面

Connect

之后的玩法就跟其他數(shù)據(jù)庫差不多了,可以點擊下面的Sample SQL Script部分來感受一下建表和插入數(shù)據(jù)等,help命令,可以顯示所有的命令。關(guān)于命令的詳細可以去H2官網(wǎng)里面看。

H2 控制臺

關(guān)于H2 數(shù)據(jù)庫的連接方式

連接H2數(shù)據(jù)庫有以下方式

  • 服務(wù)式 (Server)
  • 嵌入式(Embedded)
  • 內(nèi)存(Memory)

還沒太仔細研究,到目前的理解:
嵌入式的話,就是這個H2數(shù)據(jù)庫只能給一個應(yīng)用使用,連接是有排他機制的。當(dāng)一個應(yīng)用用嵌入式連接方式連接了以后,其他的應(yīng)用就不能再連接了。
服務(wù)式的話,就跟MySQL、Oracle這種數(shù)據(jù)庫差不多,服務(wù)器單獨運行,可以多個客戶端同時連接。
內(nèi)存方式,顧名思義,數(shù)據(jù)僅保持在內(nèi)存中

嵌入式和服務(wù)式主要體現(xiàn)在JDBC連接的URL方式不同,上面例子中給的是服務(wù)式的。

  • 服務(wù)式 (Server)
    jdbc:h2:tcp://localhost/~/test
  • 嵌入式(Embedded)
    jdbc:h2:~/test
  • 內(nèi)存式(Memory)
    jdbc:h2:tcp://localhost/mem:test

這個不用記,在H2控制臺的Login畫面選擇連接方式,就會生成不同的URL

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,506評論 19 139
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 47,255評論 6 342
  • H2是一個開源的嵌入式數(shù)據(jù)庫引擎,采用java語言編寫,不受平臺的限制,同時H2提供了一個十分方便的web控制臺用...
    西漠閱讀 42,675評論 0 24
  • 主要內(nèi)容 定義Spring的數(shù)據(jù)訪問支持 配置數(shù)據(jù)庫資源 使用Spring提供的JDBC模板 寫在前面:經(jīng)過上一篇...
    程序熊大閱讀 8,994評論 1 31
  • (5) 每當(dāng)學(xué)校操場上播放電影的那一天,對于同學(xué)們來說是百分百的節(jié)日。那種感覺與十字街上的電影院是完全不一樣的,那...
    一地狗血閱讀 286評論 0 0

友情鏈接更多精彩內(nèi)容