Spring Boot 和 H2 - 概述
什么是 H2?
H2 数据库是一个开源、嵌入式和内存中的关系数据库管理系统。 它是用 Java 编写的,并提供了一个客户端/服务器应用程序。它将数据存储在系统内存而不是磁盘中。 一旦程序关闭,数据也会丢失。 当我们不想持久化数据并对整体功能进行单元测试时,使用内存数据库。 其他一些流行的内存数据库是 HSQLDB 或 HyperSQL 数据库和 Apache Derby。 H2 是其他嵌入式数据库中最受欢迎的一种。
H2 数据库的优势
以下是 H2 提供的优势列表 −
不需配置 − Spring Boot 本质上支持 H2,并且不需要额外的配置来配置 H2 数据库。
易于使用 − H2 数据库非常易于使用。
轻量级和速度快 − H2 数据库非常轻量级并且在内存中,速度非常快。
切换配置 − 使用配置文件,您可以轻松地在生产级数据库和内存数据库之间切换。
支持标准 SQL 和 JDBC − H2 数据库几乎支持标准 SQL 的所有特性和 JDBC 的操作。
基于 Web 的控制台 − H2 数据库可以通过其基于 Web 的控制台应用程序进行管理。
配置 H2 数据库
将 H2 数据库添加为 maven 依赖项,就是这样。
实例
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency>
虽然,spring boot 会自动配置 H2 数据库。 我们可以通过在 application.properties 中指定它们来覆盖默认配置,如下所示。
实例
spring.datasource.url=jdbc:h2:mem:testdb
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=
spring.jpa.database-platform=org.hibernate.dialect.H2Dialect
spring.h2.console.enabled=true
持久化 H2 数据
如果需要持久存储,请在 application.properties 中添加以下配置。
spring.datasource.url=jdbc:h2:file:/data/database spring.datasource.url=jdbc:h2:C:/data/database