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