데이터베이스

초보자를 위한 Java JDBC와 Oracle 데이터베이스 연결 가이드

CodeCaine Explorer 2024. 12. 19. 12:30
728x90
반응형
SMALL

안녕하세요! 😊
오늘은 Java와 Oracle 데이터베이스를 연동하는 방법에 대해 알아볼게요. 처음 JDBC를 사용하면 설정부터 에러까지 복잡하게 느껴질 수 있지만, 차근차근 따라하면 어렵지 않답니다. 포기하지 말고 끝까지 함께 해봐요! ✨


1. JDBC란 무엇인가요?

JDBC는 Java Database Connectivity의 약자로, 자바에서 데이터베이스와 통신하기 위한 API입니다. 간단히 말해, Java 애플리케이션과 데이터베이스를 연결해주는 다리 역할을 합니다.


2. Oracle과 Java 연동 준비물

1. Oracle Database 설치

Oracle 데이터베이스가 설치되어 있어야 합니다.
(설치가 안 됐다면 Oracle 공식 사이트를 참고하세요.)

2. JDBC 드라이버 다운로드

Oracle과 Java가 통신하려면 JDBC 드라이버(ojdbc.jar)가 필요합니다.

3. 환경설정

드라이버를 프로젝트에 추가합니다.

  1. Maven 프로젝트의 경우,

    pom.xml

    에 의존성을 추가합니다.

    xml코드 복사<dependency>
        <groupId>com.oracle.database.jdbc</groupId>
        <artifactId>ojdbc8</artifactId>
        <version>19.19.0.0</version>
    </dependency>
  2. 일반 프로젝트라면 ojdbc8.jar 파일을 라이브러리로 추가하세요.


3. Oracle 연동 코드 예제

이제 Oracle 데이터베이스와 연결해보는 코드를 작성해볼게요! 🎉

기본 코드

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

public class OracleJDBCExample {
    public static void main(String[] args) {
        // Oracle JDBC 연결 정보
        String url = "jdbc:oracle:thin:@localhost:1521:xe"; // DB URL
        String user = "your_username"; // DB 사용자명
        String password = "your_password"; // DB 비밀번호

        // SQL 쿼리
        String sql = "SELECT * FROM EMPLOYEES";

        try (Connection conn = DriverManager.getConnection(url, user, password);
             PreparedStatement pstmt = conn.prepareStatement(sql);
             ResultSet rs = pstmt.executeQuery()) {

            System.out.println("Oracle DB에 연결 성공!");

            // 데이터 출력
            while (rs.next()) {
                System.out.println("ID: " + rs.getInt("ID") + ", Name: " + rs.getString("NAME"));
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

4. 코드 설명

  1. Connection
    • 데이터베이스 연결 객체를 생성합니다.
    • DriverManager.getConnection(url, user, password)로 연결 정보를 입력합니다.
  2. PreparedStatement
    • SQL 쿼리를 실행하기 위한 객체입니다.
    • PreparedStatement를 사용하면 SQL Injection 공격을 방지할 수 있어요.
  3. ResultSet
    • SQL 쿼리 결과를 저장하고 읽어오는 데 사용됩니다.

5. 자주 발생하는 에러와 해결법

1. java.sql.SQLException: ORA-01017

원인: 잘못된 사용자명 또는 비밀번호.
해결법: 사용자명과 비밀번호를 다시 확인하세요.

2. java.lang.ClassNotFoundException: oracle.jdbc.OracleDriver

원인: JDBC 드라이버가 클래스 경로에 없습니다.
해결법: ojdbc8.jar 파일을 프로젝트에 추가하거나, Maven 의존성을 확인하세요.

3. ORA-12514, TNS:listener does not currently know of service requested

원인: URL에서 서비스 이름이 잘못되었습니다.
해결법: 올바른 데이터베이스 URL을 입력했는지 확인하세요.


용어 정리

  • JDBC: 자바와 DB를 연결하는 API.
  • DriverManager: DB 연결을 관리하는 클래스.
  • PreparedStatement: SQL 쿼리를 실행하는 객체.
  • ResultSet: 쿼리 결과를 저장하는 객체.

😊 포기하지 말고 끝까지 도전하세요!

JDBC는 처음에는 복잡해 보여도, 한번 익히면 어디서든 활용할 수 있는 중요한 기술이에요. 한 단계씩 따라가다 보면 여러분도 Oracle 데이터베이스와 멋지게 연동할 수 있을 거예요!

반응형
SMALL