Spring Boot 集成 H2

来自姬鸿昌的知识库
Jihongchang讨论 | 贡献2023年2月17日 (五) 01:41的版本
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳到导航 跳到搜索

添加依赖

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.4.13</version>
    </parent>

    <dependencies>

        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
        </dependency>

    </dependencies>



配置

spring:
  datasource:
    url: jdbc:h2:mem:testdb
    driver-class-name: org.h2.Driver
    schema: classpath:db/schema-h2.sql
    username: root
    password: test
  h2:
    console:
      enabled: true
      path: /h2-console

默认还是使用了 Hikari 作为数据库连接池;

H2 可以选择将数据存储在内存还是磁盘上,用 spring.datasource.url 配置:

  • jdbc:h2:mem:testdb 这种就是内存,然后库名是 testdb
  • jdbc:h2:file:/path/to/db/file 这种就是文件

和 Spring Boot 内置的 Web 容器一起用的时候,可以使用 H2 的 Web 控制台,但需要先启用:

spring.h2.console.enabled=true,否则访问就会 404

spring.h2.console.path 配置控制台,默认就是 /h2-console


其他常见配置:

https://docs.spring.io/spring-boot/docs/2.4.13/reference/html/appendix-application-properties.html#spring.h2.console.enabled