[java] Java 애플리케이션에서 Apache Derby를 사용하여 데이터베이스를 테스트하는 방법에 대해 알려주세요.

Apache Derby는 Java를 위한 경량 데이터베이스입니다. 이 데이터베이스를 사용하여 Java 애플리케이션을 테스트하고 개발할 수 있습니다. 이 문서에서는 Java 애플리케이션에서 Apache Derby 데이터베이스를 설정하고 사용하는 방법에 대해 알려드리겠습니다.

1. Apache Derby 다운로드 및 설치

가장 먼저, Apache Derby를 다운로드하고 설치해야 합니다. Apache Derby를 다운로드하려면 Apache Derby 웹사이트에서 최신 버전을 찾아야 합니다. 다운로드한 파일을 압축 해제한 후 특정 위치에 설치합니다.

2. 데이터베이스 생성

Apache Derby를 사용하여 데이터베이스를 생성하는 방법은 여러 가지가 있습니다. 가장 간단한 방법으로는 Java 코드를 사용하여 데이터베이스를 생성하는 것입니다. 아래는 데이터베이스를 생성하는 Java 코드의 예입니다.

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;

public class CreateDatabase {
    public static void main(String[] args) {
        Connection conn = null;
        Statement stmt = null;

        try {
            conn = DriverManager.getConnection("jdbc:derby:/path/to/database;create=true");
            stmt = conn.createStatement();

            // CREATE TABLE 등의 SQL 구문을 실행하여 테이블 생성

            System.out.println("데이터베이스가 성공적으로 생성되었습니다.");

        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                if (stmt != null) stmt.close();
                if (conn != null) conn.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
}

위의 코드에서 /path/to/database는 데이터베이스 파일의 경로를 나타내는 것이며, 절대 경로 또는 상대 경로를 사용할 수 있습니다. 데이터베이스 연결 URL에 ;create=true를 추가하여 데이터베이스가 없으면 자동으로 생성되도록 합니다.

3. 데이터베이스 연결 및 사용

데이터베이스를 생성한 후, Java 애플리케이션에서 데이터베이스에 연결하여 사용할 수 있습니다. 아래는 데이터베이스에 연결하여 테이블을 생성하고 조회하는 Java 코드의 예입니다.

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class AccessDatabase {
    public static void main(String[] args) {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;

        try {
            conn = DriverManager.getConnection("jdbc:derby:/path/to/database");
            stmt = conn.createStatement();

            // SELECT 등의 SQL 구문을 실행하여 데이터 조작

            rs = stmt.executeQuery("SELECT * FROM mytable");

            while (rs.next()) {
                System.out.println(rs.getString("column1") + ", " + rs.getString("column2"));
            }

        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                if (rs != null) rs.close();
                if (stmt != null) stmt.close();
                if (conn != null) conn.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
}

위의 코드에서 /path/to/database는 앞서 생성한 데이터베이스 파일의 경로를 나타내는 것입니다. 데이터베이스 연결 URL에 ;create=true를 제거하여 이미 생성된 데이터베이스에 연결하도록 합니다.

참고 자료