最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot集成H2數(shù)據(jù)庫的實(shí)現(xiàn)示例

 更新時(shí)間:2024年07月01日 08:34:44   作者:可兒·四系桜  
H2數(shù)據(jù)庫作為一個(gè)輕量級的內(nèi)存數(shù)據(jù)庫,非常適合開發(fā)階段作為嵌入式數(shù)據(jù)庫進(jìn)行單元測試和功能驗(yàn)證,本文主要介紹了SpringBoot集成H2數(shù)據(jù)庫的實(shí)現(xiàn)示例,具有一定的參考的參考價(jià)值,感興趣的可以了解一下

1. 引言

Spring Boot 以其簡潔的配置和快速開發(fā)能力,成為現(xiàn)代微服務(wù)架構(gòu)的首選框架之一。而H2數(shù)據(jù)庫作為一個(gè)輕量級的內(nèi)存數(shù)據(jù)庫,非常適合開發(fā)階段作為嵌入式數(shù)據(jù)庫進(jìn)行單元測試和功能驗(yàn)證。本文將手把手教你如何在Spring Boot項(xiàng)目中集成H2數(shù)據(jù)庫,實(shí)現(xiàn)數(shù)據(jù)的快速存取與管理。

2. H2數(shù)據(jù)庫所需依賴

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

3. H2數(shù)據(jù)庫application.yaml配置文件

spring:
  datasource:
    url: jdbc:h2:~/user
    driver-class-name: org.h2.Driver
    username: root
    password: 123456
  h2:
    console:
      path: /h2-console  #h2嵌入式數(shù)據(jù)庫控制臺
      enabled: true

4. 初始化h2數(shù)據(jù)庫

注意:

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數(shù)據(jù)庫
 */
@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 {
        //初始化本地?cái)?shù)據(jù)庫
        String userHome = System.getProperty("user.home");//獲取系統(tǒng)用戶目錄
        File f = new File(userHome + File.separator + "h2.lck");
        if (!f.exists()) {
            log.info("--------------初始化h2數(shù)據(jù)----------------------");
            f.createNewFile();
            Resource resource = applicationContext.getResource(schema);
            ScriptUtils.executeSqlScript(dataSource.getConnection(), resource);
        } else {
            log.info("--------------h2數(shù)據(jù)庫已經(jīng)存在----------------------");
        }
    }
}

 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. 啟動項(xiàng)目 

訪問路徑為:http://localhost:8080/h2-console

7. 訪問數(shù)據(jù)庫 

1. 填寫登錄信息,如下圖所示:

2. 如果有student表,并且有數(shù)據(jù),說明數(shù)據(jù)庫配置成功

到此這篇關(guān)于SpringBoot集成H2數(shù)據(jù)庫的實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)SpringBoot集成H2數(shù)據(jù)庫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • mybatis查詢實(shí)現(xiàn)返回List<Map>類型數(shù)據(jù)操作

    mybatis查詢實(shí)現(xiàn)返回List<Map>類型數(shù)據(jù)操作

    這篇文章主要介紹了mybatis查詢實(shí)現(xiàn)返回List<Map>類型數(shù)據(jù)操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • Java判斷是否為簡體中文字符的實(shí)現(xiàn)方法

    Java判斷是否為簡體中文字符的實(shí)現(xiàn)方法

    在應(yīng)用開發(fā)中,判斷簡體中文字符是一個(gè)重要但常被忽視的任務(wù),簡體中文和繁體中文在字符上有顯著的區(qū)別,因此在某些場景下我們需要判斷輸入的文本是否為簡體中文,本文將介紹如何使用Java進(jìn)行此判斷,并提供相應(yīng)的代碼示例,幫助開發(fā)者更好地理解這一過程
    2024-09-09
  • MyBatis實(shí)現(xiàn)數(shù)據(jù)庫類型和Java類型的轉(zhuǎn)換

    MyBatis實(shí)現(xiàn)數(shù)據(jù)庫類型和Java類型的轉(zhuǎn)換

    MyBatis 在處理數(shù)據(jù)庫查詢結(jié)果或傳遞參數(shù)時(shí),需要將數(shù)據(jù)庫類型與 Java 類型之間進(jìn)行轉(zhuǎn)換,本文就給大家介紹MyBatis如何實(shí)現(xiàn)數(shù)據(jù)庫類型和 Java 類型的轉(zhuǎn)換的,需要的朋友可以參考下
    2024-09-09
  • 基于Spire.Doc for Java實(shí)現(xiàn)HTML轉(zhuǎn)PDF的操作方案

    基于Spire.Doc for Java實(shí)現(xiàn)HTML轉(zhuǎn)PDF的操作方案

    本文記錄了使用Spire.DocforJava將HTML內(nèi)容轉(zhuǎn)換為PDF文檔的過程,包括環(huán)境準(zhǔn)備、兩種常見的轉(zhuǎn)換場景、進(jìn)階設(shè)置以及注意事項(xiàng),適用于樣式復(fù)雜度相對可控、排版以文檔流為主的轉(zhuǎn)換需求,需要的朋友可以參考下
    2026-04-04
  • MyBatis實(shí)現(xiàn)配置加載的步驟

    MyBatis實(shí)現(xiàn)配置加載的步驟

    本文主要介紹了MyBatis實(shí)現(xiàn)配置加載的步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • Spring中使用騰訊云發(fā)送短信驗(yàn)證碼的實(shí)現(xiàn)示例

    Spring中使用騰訊云發(fā)送短信驗(yàn)證碼的實(shí)現(xiàn)示例

    本文主要介紹了Spring?中?使用騰訊云發(fā)送短信驗(yàn)證碼,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • 詳解Java的Hibernate框架中的注解與緩存

    詳解Java的Hibernate框架中的注解與緩存

    這篇文章主要介紹了詳解Java的Hibernate框架中的注解與緩存,Hibernate是Java的SSH三大web開發(fā)框架之一,需要的朋友可以參考下
    2015-12-12
  • java數(shù)據(jù)隨機(jī)分頁實(shí)現(xiàn)方案

    java數(shù)據(jù)隨機(jī)分頁實(shí)現(xiàn)方案

    本文主要介紹了java數(shù)據(jù)隨機(jī)分頁實(shí)現(xiàn)方案,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • Spring Boot中捕獲異常錯(cuò)誤信息并將其保存到數(shù)據(jù)庫中的操作方法

    Spring Boot中捕獲異常錯(cuò)誤信息并將其保存到數(shù)據(jù)庫中的操作方法

    這篇文章主要介紹了Spring Boot中捕獲異常錯(cuò)誤信息并將其保存到數(shù)據(jù)庫中的操作方法,通過實(shí)例代碼介紹了使用Spring Data JPA創(chuàng)建一個(gè)異常信息的存儲庫接口,以便將異常信息保存到數(shù)據(jù)庫,需要的朋友可以參考下
    2023-10-10
  • mybatis-plus3.0.1枚舉返回為null解決辦法

    mybatis-plus3.0.1枚舉返回為null解決辦法

    這篇文章主要介紹了mybatis-plus3.0.1枚舉返回為null解決辦法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12

最新評論

六枝特区| 潞城市| 怀集县| 蕉岭县| 阿拉尔市| 新邵县| 大荔县| 凤冈县| 西盟| 天门市| 崇义县| 西乌| 阜新市| 松江区| 潜江市| 广东省| 南宁市| 乌兰浩特市| 腾冲县| 涟水县| 无棣县| 微山县| 泗阳县| 汉寿县| 墨竹工卡县| SHOW| 鲁山县| 尼木县| 新泰市| 五原县| 安顺市| 邯郸县| 吉首市| 锡林浩特市| 无锡市| 墨竹工卡县| 无棣县| 军事| 奉贤区| 随州市| 中宁县|