1.Maven引入包
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</version>
</dependency>

2.在项目的src/main/resources目录下创建一个名为schema.sql的文件,则该文件将会自动被执行。schema.sql文件中定义的所有SQL语句都将被执行,并将在H2数据库中创建对应的表和其他对象。

SET MODE Oracle;

CREATE SCHEMA "CLIENT";
CREATE TABLE "CLIENT"."USER_INFO"
( "ID" NUMBER(10) NOT NULL,
"USER" VARCHAR2(10) NOT NULL,
"ADDRESS" VARCHAR2(100) NOT NULL,
CONSTRAINT "PK_USER_INFO" PRIMARY KEY("ID")
); CREATE SCHEMA "API";
CREATE TABLE "API"."PROCESS"
( "ID" NUMBER(10) NOT NULL,
"PROCESS" VARCHAR2(10) NOT NULL,
CONSTRAINT "PK_PROCESS" PRIMARY KEY("ID"),
CONSTRAINT "FK_PROCESS" FOREIGN KEY("PROCESS")
);

注意:自动执行schema.sql文件的功能是由Spring Boot自动配置提供的。如果使用的是纯粹的Maven项目,而非Spring Boot项目,则需要手动编写代码来读取并执行schema.sql文件中的SQL语句。

3. 如果需要在测试过程中预先插入一些测试数据,也可以在src/main/resources目录下添加一个名为data.sql的文件。

data.sql文件中定义的所有SQL语句也将在测试启动时被自动执行,以插入一些测试数据到H2数据库中。

INSERT INTO CLIENT.USER_INFO VALUES ("1","Eileen","xxxx");
INSERT INTO CLIENT.USER_INFO VALUES ("2","Joey","xxxx"); INSERT INTO API.PROCESS VALUES ("1","haha");

注意:data.sql文件会在schema.sql文件之后被执行,以确保表和其他对象已经被正确地创建。

4. 创建配置文件application.yml 配置数据库连接

spring:
datasource:
url: jdbc:h2:mem:mydb
username: sa
password: passeord
driverClassName: org.h2.Driver
jpa:
database-platform: org.hibernate.dialect.Oracle12cDialect
h2:
console.enabled: true

5. 启动Spring Boot项目,启动成功后,访问http://localhost:8080/h2-console

可以看到内存数据库界面及所建的数据库表

Unit Test下使用H2内存数据库的更多相关文章

  1. H2内存数据库 支持存储到文件

     准备工作 1.下载JDK(本人下载的版本号为JDK1.7).环境变量设置JAVA_HOME.设置PATH(%JAVA_HOME%\bin%). 2.下载并解压:h2-2014-07-13.zip ...

  2. H2内存数据库支持存储到文件

    准备工作 1.下载JDK(本人下载的版本为JDK1.7).设置环境变量JAVA_HOME,设置PATH(%JAVA_HOME%\bin%). 2.下载并解压:h2-2014-07-13.zip 官网下 ...

  3. 在Spring Boot使用H2内存数据库

    文章目录 添加依赖配置 数据库配置 添加初始数据 访问H2数据库 在Spring Boot使用H2内存数据库 在之前的文章中我们有提到在Spring Boot中使用H2内存数据库方便开发和测试.本文我 ...

  4. 2018-08-20 中文代码之Spring Boot集成H2内存数据库

    续前文: 中文代码之Spring Boot添加基本日志, 源码库地址相同. 鉴于此项目中的数据总量不大(即使万条词条也在1MB之内), 当前选择轻量级而且配置简单易于部署的H2内存数据库比较合理. 此 ...

  5. 中文代码之Spring Boot集成H2内存数据库

    续前文: 中文代码之Spring Boot添加基本日志, 源码库地址相同. 鉴于此项目中的数据总量不大(即使万条词条也在1MB之内), 当前选择轻量级而且配置简单易于部署的H2内存数据库比较合理. 此 ...

  6. springboot整合H2内存数据库,实现单元测试与数据库无关性

    一.新建spring boot工程 新建工程的时候,需要加入JPA,H2依赖 二.工程结构   pom文件依赖如下: <?xml version="1.0" encoding ...

  7. ubuntu下安装h2数据库

    1.下载h2数据库安装包 http://www.h2database.com/html/download.html 2.解压安装文件包到指定目录 3.运行sh文件 4.访问web地址: http:// ...

  8. IDEA中便捷内存数据库H2的最简使用方式

    在IDEA中有时候为了练习,需要使用到数据库,但如果自己工作或开发机子上本来没有安装数据库,也没有可用的远程数据库时,我们可以直接在IDEA环境上使用便捷式的内存数据库H2,关于H2更多知识就自己去找 ...

  9. 内存数据库-H2简介与实践

    一.H2数据库介绍 H2数据库地址:http://www.h2database.com/html/main.html H2是一个开源的嵌入式(非嵌入式设备)数据库引擎,它是一个用Java开发的类库,可 ...

  10. H2 database的使用

    H2最完整的资料下载地址: http://download.csdn.net/detail/yixiaoping/5956595       H2数据库使用   H2数据库介绍 常用的开源数据库:H2 ...

随机推荐

  1. Postman配置多环境请求地址

    在使用Postman测试接口时,一个项目往往有多个环境(测试.正式等),请求不同环境的接口一般只是IP和端口不一样. 这时候我们可以定义多个环境变量,在接口地址中进行引用. 一.添加环境变量 1.点击 ...

  2. 三、核心实战-服务Service-Ingress

    Service 将一组Pods公开为网络服务的抽象方法. 暴露deployment只能在集群内访问是ClusterIP,可以集群外访问是NodePort,默认端口分配是30000-32767之间 ku ...

  3. 集群activemq重启报错java.lang.OutOfMemoryError: GC overhead limit exceeded

    最近安全部门同事说我们环境有个弱密码漏洞,activemq后台的密码不够复杂,需要改为复杂密码. 我登录了他们扫出来的url,输入admin admin,果然进来了.不得不说上一位已离职同事的安全意识 ...

  4. POD状态整理(持续更新)

    pendding Pod一直停留在Pending状态,可能表示,该Pod不能被调度到某一个节点上------我遇到的一个情况确实是这样的,因为我要mount的卷是在worker1上的,由于pod运行时 ...

  5. DAC双通道模板

    #define DAC_C #include "dac.h" float DAC_DispenseA; float DAC_DispenseB; void MyDAC_Init(v ...

  6. liunx查看端口使用情况

    netstat -ntlp //查看当前所有tcp端口

  7. Oracle数据库字符集与国家字符集

    一般情况下数据库字符集UTF-8:国家字符集:UTF-16.   服务器端:(oracle服务器端字符集)数据库字符集在创建数据库时指定,在创建后通常不能更改.在创建数据库时,可以指定字符集(CHAR ...

  8. Demo of canvas, canvas optimization and svg

    It used the canvas to draw the curves in the old project, and the client felt that it was vague, so ...

  9. vue-quill-editor 图片上传处理

    <template> <div class="quill-editor"> <!-- 图片上传组件辅助--> <el-upload cla ...

  10. python学习●错误点●expected an indented block

    报错:expected an indented block 翻译:缩进错误 因为python判断句无{},所以要缩进空格代表优先级.