SpringBoot使用H2內嵌數據庫
阿新 • • 發佈:2019-05-01
只需要 java [] url roo cat service user 接口規範
1.驅動
我們知道,JDBC是JDK自帶的接口規範,不同的數據庫有不同的實現,只需要引入相應的驅動包即可。
在使用MySQL數據庫時,引入的是MySQL驅動,相應的,使用H2數據庫時,也需要引入H2驅動包:
<dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <scope>runtime</scope> </dependency> <!-- <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency> -->
2.配置
在SpringBoot的application.properties文件配置相應屬性:
spring.datasource.driver-class-name=org.h2.Driver
spring.datasource.url=jdbc:h2:~/folder
spring.datasource.username=root
spring.datasource.password=123456
JDBC URL的作用可以決定H2是用內存還是磁盤文件存儲數據等,詳細介紹如下:
本地文件
連接語法([] 可選,<>可變):
jdbc:h2:[file:][<path>]<databaseName>
例如:
jdbc:h2:~/test //連接位於用戶目錄下的test數據庫
jdbc:h2:file:/data/sample
jdbc:h2:file:E:/H2/gacl //只在Windows下使用
在Window操作系統下,"~"這個符號代表的就是當前登錄到操作系統的用戶對應的用戶目錄,比如我當前是使用Administrator用戶登錄操作系統的,所以在"C:\Documents and Settings\Administrator.h2"目錄中就可以找到test數據庫對應的數據庫文件了。
內存數據庫
連接語法:
jdbc:h2:mem:<databasename>
示例:
jdbc:h2:mem:test_mem
遠程連接
這種連接方式就和其他數據庫類似了,是基於Service的形式進行連接的,因此允許多個客戶端同時連接到H2數據庫。
連接語法:
jdbc:h2:tcp://<server>[:<port>]/[<path>]<databaseName>
範例:
jdbc:h2:tcp://localhost/~/test //用戶目錄下
jdbc:h2:tcp://localhost/E:/H2/gacl //指定目錄
jdbc:h2:tcp://localhost/mem:gacl //內存數據庫
然後,就可以像使用MySQL一樣的使用H2了。
擴展
https://www.cnblogs.com/xuyatao/p/7080095.html
SpringBoot使用H2內嵌數據庫