Skip to content

H2

H2 是一个轻量级的 Java 内存数据库,常用于开发和测试环境。

依赖

xml
<dependency>
    <groupId>org.dromara.autotable</groupId>
    <artifactId>auto-table-strategy-h2</artifactId>
    <version>2.5.10</version>
</dependency>

测试版本

  • H2 2.2.220

配置项

yaml
auto-table:
  h2:
    admin-user:
    admin-password:

连接配置

yaml
spring:
  datasource:
    url: jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1
    driver-class-name: org.h2.Driver
    username: sa
    password:

常用连接模式:

  • 内存模式:jdbc:h2:mem:dbname
  • 文件模式:jdbc:h2:file:./data/dbname
  • 服务器模式:jdbc:h2:tcp://localhost/~/dbname

类型映射

H2 兼容多种数据库语法,AutoTable 使用标准 SQL 类型:

Java 类型H2 类型
Stringvarchar(255)
Integerint
Longbigint
Booleanboolean
Doubledouble
BigDecimaldecimal(10,2)
LocalDateTimetimestamp
LocalDatedate
byte[]blob

注意事项

大小写

H2 默认将标识符转为大写。AutoTable 使用双引号包裹标识符,保持与实体定义一致。

内存模式

使用内存模式时,应用停止后数据会丢失。设置 DB_CLOSE_DELAY=-1 可在连接关闭后保持数据库。

适用场景

  • 本地开发
  • 单元测试
  • 集成测试
  • 演示环境

Released under the Apache 2.0 License.