SpringBoot集成H2數據庫的實現示例
1. 引言
Spring Boot 以其簡潔的配置和快速開發(fā)能力,成為現代微服務架構的首選框架之一。而H2數據庫作為一個輕量級的內存數據庫,非常適合開發(fā)階段作為嵌入式數據庫進行單元測試和功能驗證。本文將手把手教你如何在Spring Boot項目中集成H2數據庫,實現數據的快速存取與管理。
2. H2數據庫所需依賴
<dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <scope>compile</scope> </dependency>
3. H2數據庫application.yaml配置文件
spring:
datasource:
url: jdbc:h2:~/user
driver-class-name: org.h2.Driver
username: root
password: 123456
h2:
console:
path: /h2-console #h2嵌入式數據庫控制臺
enabled: true4. 初始化h2數據庫
注意:
schema為初始化sql路徑
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
import org.springframework.context.ApplicationContext;
import org.springframework.core.io.Resource;
import org.springframework.jdbc.datasource.init.ScriptUtils;
import org.springframework.stereotype.Service;
import javax.annotation.PostConstruct;
import javax.sql.DataSource;
import java.io.File;
/**
* 初始化h2數據庫
*/
@Slf4j
@Service
// DataSource創(chuàng)建完后才初始化此類
@AutoConfigureAfter(DataSource.class)
public class H2DataSourceConfig {
//初始化sql
private static final String schema = "classpath:db/schema-h2.sql";
@Autowired
DataSource dataSource;
@Autowired
ApplicationContext applicationContext;
@PostConstruct
public void init() throws Exception {
//初始化本地數據庫
String userHome = System.getProperty("user.home");//獲取系統(tǒng)用戶目錄
File f = new File(userHome + File.separator + "h2.lck");
if (!f.exists()) {
log.info("--------------初始化h2數據----------------------");
f.createNewFile();
Resource resource = applicationContext.getResource(schema);
ScriptUtils.executeSqlScript(dataSource.getConnection(), resource);
} else {
log.info("--------------h2數據庫已經存在----------------------");
}
}
}5. 初始化sql語句
在resources目錄下創(chuàng)建db/schema-h2.sql文件。
DROP TABLE IF EXISTS student;
CREATE TABLE student
(
id BIGINT NOT NULL COMMENT 'id',
name VARCHAR(30) COMMENT '姓名',
age INT COMMENT '年齡',
PRIMARY KEY (id)
);
insert into student(id,name,age) values(1, 'zhangsan',23);
insert into student(id,name,age) values(2, 'lisi',45);
insert into student(id,name,age) values(3, 'wangwu',12);6. 啟動項目
訪問路徑為:http://localhost:8080/h2-console
7. 訪問數據庫
1. 填寫登錄信息,如下圖所示:

2. 如果有student表,并且有數據,說明數據庫配置成功

到此這篇關于SpringBoot集成H2數據庫的實現示例的文章就介紹到這了,更多相關SpringBoot集成H2數據庫內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
基于Spire.Doc for Java實現HTML轉PDF的操作方案
本文記錄了使用Spire.DocforJava將HTML內容轉換為PDF文檔的過程,包括環(huán)境準備、兩種常見的轉換場景、進階設置以及注意事項,適用于樣式復雜度相對可控、排版以文檔流為主的轉換需求,需要的朋友可以參考下2026-04-04
Spring Boot中捕獲異常錯誤信息并將其保存到數據庫中的操作方法
這篇文章主要介紹了Spring Boot中捕獲異常錯誤信息并將其保存到數據庫中的操作方法,通過實例代碼介紹了使用Spring Data JPA創(chuàng)建一個異常信息的存儲庫接口,以便將異常信息保存到數據庫,需要的朋友可以參考下2023-10-10
mybatis-plus3.0.1枚舉返回為null解決辦法
這篇文章主要介紹了mybatis-plus3.0.1枚舉返回為null解決辦法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-12-12

