[java] Maven을 사용하여 자바 데이터베이스 연동하기

Maven은 자바 프로젝트를 관리하는 도구로, 의존성 관리와 라이브러리 다운로드를 간편하게 해줍니다. 이번 글에서는 Maven을 사용하여 자바 어플리케이션과 데이터베이스를 연동하는 방법에 대해 알아보겠습니다.

1. Maven 프로젝트 생성하기

먼저, Maven을 이용하여 프로젝트를 생성해야 합니다. 이를 위해 Maven CLI(Command Line Interface)를 사용하거나 Eclipse나 IntelliJ와 같은 통합 개발 환경에서 Maven 프로젝트를 생성할 수 있습니다.

mvn archetype:generate -DgroupId=com.example -DartifactId=myapp -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

위 명령을 사용하면 com.example 그룹 아이디와 myapp 아티팩트 아이디를 가진 Maven 프로젝트가 생성됩니다.

2. Maven에 JDBC 의존성 추가하기

JDBC(Java Database Connectivity)는 자바 어플리케이션과 데이터베이스를 연결하기 위한 API입니다. 이를 사용하기 위해 Maven 프로젝트에 JDBC 의존성을 추가해야 합니다. pom.xml 파일을 열고 다음 코드를 <dependencies> 태그 안에 추가합니다.

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.26</version>
</dependency>

위 코드는 MySQL 데이터베이스를 사용하는 경우의 의존성입니다. 만약 다른 데이터베이스를 사용한다면 해당 데이터베이스의 JDBC 드라이버 의존성을 추가해주어야 합니다. 의존성을 추가한 후, Maven은 해당 라이브러리를 자동으로 다운로드하여 프로젝트에 추가합니다.

3. 데이터베이스 연결 설정하기

데이터베이스에 연결하기 위해선, 데이터베이스의 URL, 사용자명, 비밀번호 등과 같은 연결 정보가 필요합니다. 이러한 정보를 프로퍼티 파일에 저장하고, 애플리케이션에서 이를 읽어 데이터베이스에 접속할 수 있습니다.

프로퍼티 파일을 생성하고, 다음과 같은 내용을 작성합니다.

db.url=jdbc:mysql://localhost:3306/mydb
db.username=root
db.password=123456

4. 자바 코드로 데이터베이스 연결하기

자바 코드를 통해 데이터베이스에 접속하고 쿼리를 실행해보겠습니다.

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

public class DatabaseConnector {
    public static void main(String[] args) {
        // 프로퍼티 파일에서 연결 정보 읽기
        String url = System.getProperty("db.url");
        String username = System.getProperty("db.username");
        String password = System.getProperty("db.password");

        try (Connection conn = DriverManager.getConnection(url, username, password);
             Statement stmt = conn.createStatement();
             ResultSet rs = stmt.executeQuery("SELECT * FROM users")) {

            // 쿼리 결과 처리
            while (rs.next()) {
                int id = rs.getInt("id");
                String name = rs.getString("name");
                System.out.println("ID: " + id + ", Name: " + name);
            }

        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

위 코드는 데이터베이스에 접속하여 users 테이블의 데이터를 조회하는 예제입니다. 프로퍼티 파일에서 읽어온 연결 정보를 사용하여 DriverManager.getConnection() 메소드를 호출하여 데이터베이스에 접속하고, ResultSet을 통해 쿼리 결과를 처리합니다.

참고 자료

이로써 Maven을 사용하여 자바 프로젝트와 데이터베이스를 연동하는 방법에 대해 알아보았습니다. 다음 글에서는 Spring 프레임워크를 사용하여 데이터베이스 연동하는 방법에 대해 알아보도록 하겠습니다.