<thead id="rrjt3"></thead>
      <progress id="rrjt3"><dfn id="rrjt3"></dfn></progress>

      <em id="rrjt3"></em>

        <address id="rrjt3"><ins id="rrjt3"><dfn id="rrjt3"></dfn></ins></address>
          <i id="rrjt3"></i>

        SpringBoot 集成H2數據庫

        時間:2022-10-06 17:56:49 類型:數據庫
        字號:    

          概述h2數據庫

          h2database為我們提供了十分輕量,十分快捷方便的內嵌式數據庫

          H2是一個用Java開發的嵌入式數據庫,它本身只是一個類庫,可以直接嵌入到應用項目中。

          可以同應用程序打包在一起發布

          它的另一個用途是用于單元測試。啟動速度快,而且可以關閉持久化功能,每一個用例執行完隨即還原到初始狀態

          提供JDBC訪問接口,提供基于瀏覽器的控制臺,可以執行sql

          免費,開源,夠快

          還方便了程序剛開始dao層單元測試測試,不需要搭建oracle,不需要加載mysql,快速測試寫的dao

          

          SpringBoot整合測試

        <!--h2數據庫-->
        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
            <scope>runtime</scope>
        </dependency>

          yml配置

        spring:
          datasource:
            #配置h2數據庫的連接地址
            # Embedded 嵌入式
            # Remote (client/server) 遠程連接
            # In-Memory 內存
            url: jdbc:h2:file:F:/java/h2/db/test
            #通過H2 Database Engine先創建好數據庫https://h2database.com/html/main.html
            #配置JDBC Driver
            driver-class-name: org.h2.Driver
            #配置數據庫用戶名
            username: root
            #配置數據庫密碼
            password: 123456
            #進行該配置,程序開啟時就會啟動h2 web consloe。當然這是默認的,如果你不想在啟動程序時啟動h2 web consloe,那么就設置為false。
          h2:
            console:
              enabled: true
              #進行該配置,你就可以通過YOUR_URL/h2訪問h2 web consloe。YOUR_URL是你程序的訪問URl。默認為/h2-console
              path: /h2
              # 進行該配置后,h2 web consloe就可以在遠程訪問了。否則只能在本機訪問。
              settings:
                web-allow-others: true

          數據庫支持多種連接模式和連接設置,主要有 Embedded 嵌入式,Remote (client/server) 遠程連接,In-Memory 內存

          Embedded 嵌入式

          URL jdbc:h2:?/test表示數據庫存儲在用戶主目錄中以“ test”開頭的文件中。 支持絕對位置,如jdbc:h2:/data/db/test。 在嵌入式模式下,數據庫與應用程序以相同的過程運行。 任何時候都只能有一個進程訪問數據庫。 如果您擁有權限,則不存在的數據庫將自動創建。 形式為jdbc:h2:./data/test的URL相對于當前工作目錄(啟動應用程序的目錄)。 建議使用相對于?或絕對位置的位置。

          Remote (client/server) 遠程連接

          URL jdbc:h2:tcp//localhost/?/test表示通過TCP / IP連接到此計算機上運行的H2 TCP服務器,并在用戶主目錄中打開一個名為test的數據庫。 必須首先啟動服務器。 任意數量的客戶端都可以連接到同一數據庫。 適用與嵌入式數據庫相同的位置規則。

          In-Memory 內存

          URL jdbc:h2:mem:test意味著打開一個名為“test”的內存數據庫。數據不持久,當最后一個數據庫連接關閉時,數據會丟失。多個線程可以訪問同一個數據庫,但是數據只能在同一個進程中可見。


             1.jpg

        黄网站免费 <