Java 中的嵌入式資料庫

Sheeraz Gul 2023年10月12日
  1. Apache Derby
  2. HSQLDB(HyperSQL 資料庫)
  3. H2
Java 中的嵌入式資料庫

一種將資料庫解決方案嵌入到應用程式中的資料庫技術,而不是獨立的,稱為嵌入式資料庫。這些資料庫是輕量級、快速的,並且易於配置和改進的可測試性,這使得它們在開發和測試階段很有幫助。

Java 有許多型別的嵌入式資料庫。本教程比較了 Java 中嵌入式資料庫的一些最佳選擇。

下圖演示了嵌入式資料庫的工作原理。

嵌入式資料庫

Apache Derby

Apache Derby 是一個用 Java 實現的開源資料庫。該資料庫在 Apache 的許可下。

該資料庫的標準是 JDBC 和 SQL。它還支援客戶端/伺服器模式。

derby 支援關聯式資料庫的所有特性。

我們使用 derby.jar 在 Java 中實現 Apache derby。要進行連線,請遵循以下命令。

// load driver
Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
Connection c = DriverManager.getConnection("jdbc:derby:testdb1;create=true")

create=true 將建立資料庫,如果它不存在,然後建立連線;如果資料庫不存在,我們僅在要建立資料庫時使用此引數。

Apache derby jar 可以從這裡下載。

HSQLDB(HyperSQL 資料庫)

HyperSQL 是根據 SQL 標準和 JDBC 規範制定的。HyperSQL 支援現代關聯式資料庫中使用的所有功能。

它支援嵌入式和伺服器模式。這個資料庫純粹是用 Java 開發的。

HyperSQL 還支援 PreparedStatementCallableStatement;它還支援兩階段鎖定和多版本併發控制。

HyperSQL 包含在一個 jar 包中,其中包括 HyperSQL、RDBMS 引擎和 JDBC 驅動程式,用於將 HyperSQL 嵌入到 Java 應用程式中。要在 Java 中連線 HyperSQL,請執行以下命令。

// load driver
Class.forName("org.hsqldb.jdbcDriver");
Connection connection = DriverManager.getConnection("jdbc:hsqldb:testdb", "sa", "");

HyperSQL 包可以從這裡下載。

H2

H2 也是一個基於 SQL 標準和 JDBC API 支援的開源資料庫。它還支援嵌入式和伺服器模式、多版本併發和行級鎖定。

要在 Java 中與 H2 建立連線,請執行以下命令。

// load driver
Class.forName("org.h2.Driver");
Connection connection = DriverManager.getConnection("jdbc:h2:~/test", "sa", "");

其中~/ 表示使用者主目錄,與其他資料庫相比,H2 比較全面。

H2 資料庫可以從這裡下載。

作者: Sheeraz Gul
Sheeraz Gul avatar Sheeraz Gul avatar

Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.

LinkedIn Facebook

相關文章 - Java Database