SpringBoot使用H2内嵌数据库

1.驱动

咱们知道,JDBC是JDK自带的接口规范,不一样的数据库有不一样的实现,只须要引入相应的驱动包便可。html

在使用MySQL数据库时,引入的是MySQL驱动,相应的,使用H2数据库时,也须要引入H2驱动包:java

<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文件配置相应属性:mysql

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是用内存仍是磁盘文件存储数据等,详细介绍以下:spring

本地文件

链接语法([] 可选,<>可变):sql

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数据库对应的数据库文件了。app

内存数据库

链接语法:tcp

jdbc:h2:mem:<databasename>

示例:url

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了。

扩展

http://www.javashuo.com/article/p-mwdubnhk-a.html

相关文章
相关标签/搜索