HOWTO · Java
Java의 임베디드 데이터베이스
이 튜토리얼은 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은 PreparedStatement 및 CallableStatement도 지원합니다. 또한 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 데이터베이스는 여기에서 다운로드할 수 있습니다.