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.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도 지원합니다. 또한 2단계 잠금 및 다중 버전 동시성 제어를 지원합니다.

HyperSQL은 HyperSQL을 Java 애플리케이션에 내장하기 위한 HyperSQL, RDBMS 엔진 및 JDBC 드라이버를 포함하는 jar 패키지로 제공됩니다. 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