使用Spring Boot框架来使用H2数据库
使用Spring Boot来利用H2数据库。
在使用Spring Boot和H2数据库创建简单程序之前,本文将介绍连接设置、表格和插入数据的创建步骤。
前提
这篇文章需要基本了解Spring的知识。
另外,我会尽量用简单易懂的语言来写,但由于这篇文章是我学习的成果输出,部分解释将会省略。
建立环境
Spring Boot DevTools:提供自动重新启动Web应用程序的功能
JDBC API,Spring Data JDBC:允许使用JDBC执行SQL语句
H2 Database:可使用H2数据库
JDBC API,Spring Data JDBC:允许使用JDBC执行SQL语句
H2 Database:可使用H2数据库
这次要做的事情
这次我们将按照以下步骤进行。
-
- H2 数据库是什么
-
- 在 application.properties 文件中记录了使用 H2 数据库所需的配置
-
- 准备创建表格的 SQL 语句
- 准备插入初始数据的 SQL 语句
1. H2数据库是什么?
H2数据库是一种内存数据库,将所有数据存储在内存中。因此,只能在Spring Boot启动时使用数据库。如果重新启动Spring Boot,则表和数据将消失,因此可以利用此机制进行测试和学习等。
2. 在application.properties文件中写入配置以使用H2数据库。
#DataSource
spring.datasource.url=jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE
spring.datasource.driver-class-name=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=
spring.sql.init.encoding=UTF-8
spring.datasource.initialize=true
spring.sql.init.schema-locations=classpath:schema.sql
spring.sql.init.data-locations=classpath:data.sql
#H2DB
spring.h2.console.enabled=true
DB_CLOSE_DELAY=-1:当H2连接断开时,不会丢弃数据库
DB_CLOSE_ON_EXIT=FALSE:禁用虚拟机退出时自动关闭数据库
spring.datasource.initialize=true:执行创建表和插入数据的SQL语句
spring.sql.init.schema-locations:执行创建表的SQL语句
spring.sql.init.data-locations:执行插入初始数据的SQL语句
classpath:指的是「src/main/resources」,schema、data.sql文件应放置在「resources」下
spring.h2.console.enabled=true:可以通过http://localhost:8080/h2-console访问并使用控制台
DB_CLOSE_ON_EXIT=FALSE:禁用虚拟机退出时自动关闭数据库
spring.datasource.initialize=true:执行创建表和插入数据的SQL语句
spring.sql.init.schema-locations:执行创建表的SQL语句
spring.sql.init.data-locations:执行插入初始数据的SQL语句
classpath:指的是「src/main/resources」,schema、data.sql文件应放置在「resources」下
spring.h2.console.enabled=true:可以通过http://localhost:8080/h2-console访问并使用控制台
2. 准备用于创建表的SQL语句
在「src/main/resources」的根目录下创建一个名为「shema.sql」的文件。
CREATE TABLE IF NOT EXISTS employee(
id VARCHAR(50) PRIMARY KEY,
name VARCHAR(50),
age INT
);
准备用于插入初始数据的SQL语句。
在「src/main/resources」的直接子目录下创建一个名为「data.sql」的文件。
INSERT INTO employee(id, name, age) VALUES('1', 'Kato', 10)
最终
接下来将结束连接设置。最后我会附上参考的数据连接设置网站。