1. 程式人生 > 實用技巧 >SpringBoot整合H2記憶體資料庫快速啟動測試

SpringBoot整合H2記憶體資料庫快速啟動測試

SpringBoot整合H2記憶體資料庫快速啟動測試

本文程式碼樣例均已上傳至:https://gitee.com/tqbx/springboot-samples-learn/tree/master/spring-boot-h2

參考:Springboot和記憶體資料庫H2的使用教程

記憶體資料庫

顧名思義:就是將資料存放載記憶體中,直接操作的資料庫。相對於磁碟,記憶體的資料讀寫速度要高出幾個數量級,將資料儲存在記憶體中相比從磁碟上訪問能夠極大地提高應用的效能。優點如下:

  • 零專案配置或基礎設施
  • 易於學習,單元測試

H2就是一款用Java編寫的記憶體資料庫之一。

H2資料庫與Springboot的快速整合

  1. 新增H2依賴
        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
            <scope>runtime</scope>
        </dependency>
  1. 可以結合持久層的框架,這裡採用的mybatis-plus
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.4.0</version>
        </dependency>
  1. mybatis-plus的相關用法可以參考部落格:MybatisPlus的各種功能使用筆記綜合!
  2. 在適當的位置存放建表的sql。
    schema: classpath:db/schema-h2.sql
    data: classpath:db/data-h2.sql
  1. 需要的application.yml的配置
# DataSource Config
spring:
  datasource:
    driver-class-name: org.h2.Driver
    schema: classpath:db/schema-h2.sql
    data: classpath:db/data-h2.sql
    url: jdbc:h2:mem:test
    username: root
    password: test
  h2:
    console:
      enabled: true
# Logger Config
logging:
  level:
    com.hyh.h2.mapper: debug
server:
  port: 8081

啟動SpringBoot程式,將會自動掃描語句並建立表,填充資料,完成測試操作。

Springboot和H2資料庫管理介面

H2提供了一個名為H2 Console的Web介面來檢視資料。讓我們在application.properties中啟用h2控制檯。
需要通過配置開啟: spring.h2.console.enabled=true

在程式執行過程中,訪問:http://localhost:8081/h2-console/,這裡的埠號,和server.port配置的埠號相同,預設是8080。

配置基本按照yml的就可以成功進入介面,如下: