[java] Tomcat에서의 데이터베이스 연동 방법

Tomcat은 자바 웹 애플리케이션 서버로, 데이터베이스와의 연동이 필요한 경우가 많습니다. 이번 글에서는 Tomcat에서의 데이터베이스 연동 방법에 대해 알아보겠습니다.

JDBC 드라이버 설치

먼저, Tomcat과 데이터베이스 간의 연동을 위해 JDBC 드라이버를 설치해야 합니다. JDBC 드라이버는 데이터베이스 벤더에서 제공하며, 데이터베이스의 종류에 따라 드라이버를 다운로드해야 합니다. 대표적인 데이터베이스 벤더의 JDBC 드라이버 다운로드 페이지를 참고하여 필요한 드라이버를 다운로드하세요.

드라이버 설정

다운로드한 JDBC 드라이버를 Tomcat의 lib 폴더에 복사합니다. 이후, Tomcat의 conf 폴더 내의 context.xml 파일을 열고, 다음과 같이 리소스를 설정합니다.

<Resource name="jdbc/myDB" auth="Container" type="javax.sql.DataSource"
           maxActive="100" maxIdle="30" maxWait="10000"
           username="your_username" password="your_password"
           driverClassName="your_driver_class_name"
           url="your_database_url" />

위의 설정에서 name, username, password, driverClassName, url은 각각 사용자별로 설정해주어야 합니다.

커넥션 풀 설정

데이터베이스와의 연결을 관리하기 위해 커넥션 풀을 설정해야 합니다. 이를 위해 context.xml 파일에 다음과 같은 리소스를 추가합니다.

<ResourceParams name="jdbc/myDB">
    <parameter>
        <name>maxTotal</name>
        <value>100</value>
    </parameter>
    <parameter>
        <name>initialSize</name>
        <value>10</value>
    </parameter>
</ResourceParams>

위의 설정에서 maxTotal은 풀 안의 최대 커넥션 개수, initialSize는 초기 커넥션 개수를 설정하는 것입니다. 필요에 따라 이 값을 조정할 수 있습니다.

자바 코드에서 데이터베이스 사용

Tomcat에서의 데이터베이스 연동 설정이 완료되었습니다. 이제 자바 코드에서 데이터베이스를 사용할 수 있습니다. 데이터베이스 연결 객체를 생성하고, SQL 문을 실행하여 원하는 작업을 수행할 수 있습니다. 아래는 간단한 예제 코드입니다.

try {
    Context initCtx = new InitialContext();
    Context envCtx = (Context) initCtx.lookup("java:comp/env");
    DataSource ds = (DataSource) envCtx.lookup("jdbc/myDB");
    Connection conn = ds.getConnection();

    // SQL 문 실행

    conn.close();
} catch (NamingException | SQLException e) {
    // 예외 처리
}

위의 코드에서는 javax.naming 패키지의 InitialContext를 사용하여 리소스를 찾고, DataSource 객체를 이용하여 데이터베이스와 커넥션을 생성합니다. 이후 SQL 문을 실행하고, 작업이 완료되면 커넥션을 닫습니다. 예외 처리는 필수적으로 해주어야 합니다.

이로써 Tomcat에서의 데이터베이스 연동 방법에 대해 알아보았습니다. 데이터베이스 연동이 필요한 웹 애플리케이션 개발 시, 이를 참고하여 Tomcat과 데이터베이스를 연동할 수 있습니다.

참고 자료