[java] Java에서 Apache Derby를 사용하여 데이터베이스에 접근하는 방법에 대해 알려주세요.

Apache Derby는 Java 기반의 경량 관계형 데이터베이스 관리 시스템입니다. 이것을 사용하여 Java 애플리케이션에서 데이터베이스에 접근하고 쿼리를 실행할 수 있습니다. 이번에는 Java에서 Apache Derby를 사용하여 데이터베이스에 접속하는 방법에 대해 알려드리겠습니다.

  1. Apache Derby 라이브러리 추가
    • Apache Derby의 라이브러리를 프로젝트에 추가해야 합니다. Maven을 사용하는 경우 pom.xml 파일에 다음 의존성을 추가합니다:
    <dependency>
        <groupId>org.apache.derby</groupId>
        <artifactId>derby</artifactId>
        <version>10.15.2.0</version>
    </dependency>
    
    • 직접 라이브러리를 다운로드하여 프로젝트에 추가할 수도 있습니다. Apache Derby 웹사이트(https://db.apache.org/derby/)에서 최신 버전의 라이브러리를 다운로드합니다.
  2. 데이터베이스 연결 설정
    • 데이터베이스에 연결하기 위해 java.sql.Connection 인터페이스를 사용합니다. 연결을 수립하기 위해 JDBC 드라이버 클래스인 org.apache.derby.jdbc.EmbeddedDriver를 등록해야 합니다. 다음은 연결 설정 예시입니다:
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.SQLException;
    
    public class DatabaseConnector {
        private static final String DB_URL = "jdbc:derby:myDatabase";
    
        public static Connection getConnection() throws SQLException {
            try {
                Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
            } catch (ClassNotFoundException e) {
                e.printStackTrace();
            }
    
            return DriverManager.getConnection(DB_URL);
        }
    }
    
    • DB_URL은 데이터베이스의 URL을 나타내는 문자열입니다. 위의 예시에서는 “myDatabase”라는 이름의 데이터베이스에 연결하는 URL을 사용하였습니다.
  3. 데이터베이스 쿼리 실행
    • 데이터베이스에 접속한 뒤에는 java.sql.Statement 또는 java.sql.PreparedStatement 인터페이스를 사용하여 SQL 쿼리를 실행할 수 있습니다. 다음은 SELECT 쿼리를 실행하는 예시입니다:
    import java.sql.Connection;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    
    public class QueryExecutor {
    
        public static void main(String[] args) {
            try {
                Connection conn = DatabaseConnector.getConnection();
    
                Statement statement = conn.createStatement();
                ResultSet resultSet = statement.executeQuery("SELECT * FROM tableName");
    
                while (resultSet.next()) {
                    // 결과 처리
                }
    
                resultSet.close();
                statement.close();
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
    
    • tableName에는 실행할 테이블의 이름을 입력하면 됩니다. SELECT 외에도 INSERT, UPDATE, DELETE 등의 쿼리도 동일한 방식으로 실행할 수 있습니다.

이제 Java에서 Apache Derby를 사용하여 데이터베이스에 접속하고 쿼리를 실행하는 방법을 알게 되었습니다. 추가로 Apache Derby의 문서(https://db.apache.org/derby/docs/)를 참고하여 더 다양한 기능을 사용해보시기 바랍니다.