티스토리 뷰


JDBC, 오라클 DB 연결하기


1. 물리적인 드라이버 설치
   JDBC 라이브러리를 이용한 DB에 연결하기 위해서는 해당 DB 프로그램의 기능을 수행하는 외부 라이브러리를 프로젝트에 추가를 시켜주어야 DB에 연결을 할 수 있다.
   여기서 우리는 오라클 DB를 사용할 것이기 때문에 오라클을 중심으로 설명하겠다.
   오라클 드라이버는 ojdbc14.jar 파일이며 이 파일은 오라클 설치폴더안에 (C:\oracle\product\10.2.0\client\jdbc\lib) 포함되어 있다. (나는 C 드라이브 밑에 oracle 폴더에 오라클을 설치하였다), 그리고 오라클 홈페이지에서도 제공을 한다고 하니 알아서 찾아보시길-_-);; 바란다.
   이 ojdbc14.jar 파일을 프로젝트에 포함시켜주면 된다. 
  (포함시키는 방법은 따로 포스팅을 하도록 하겠다.)

2. 드라이버 로딩
   포함된 라이브러리를 바탕으로 해당 오라클 드라이버를 메모리에 업로드를 시켜야 한다.
   드라이버를 메모리에 업로드 시키는 방법은 Class.forName() 메소드를 이용한다.
   이 메소드는 Class 클래스에 포함되어 있으며 해당 파일경로에 위치한 파일을 프로그램이 실행될때 메모리상에 업로드 시키는 기능을 수행한다.
   수행코드는 Class.forName(oracle.jdbc.driver.OracleDriver) 이다.
   오라클 DB를 사용하면 해당 코드를 그대로 사용하면 된다.

3. 커넥션 연결
   설치된 드라이버를 메모리상에 업로드를 시키면 이제 DB를 지금 사용하는 프로그램과 연결을 시켜야 한다. 이런 연결을 시켜주는 것을 커넥션(Connection) 이라 한다.
   커넥션을 수행하는 코드는 Connection conn = DriverManager.getConnection(
       "jdbc:oracle:thin:@아이피:리스너포트:SIDl", "오라클 아이디" , "오라클 패스워드");
   DriverManager의 getConnection() 메소드를 이용하여 자신이 사용하는 오라클의 정보를 인자로 전달하여 연결을 수행하게 된다. 오라클에 접속하기 위해서는 오라클 서버의 IP, 리스너 포트, 오라클 아이디, 오라클 패스워드 를 알아야 한다. 자세한것은 밑에 소스를 참조하면 될것이다.

4. 생성된 쿼리(SQL)를 오라클로 전달
   기본적으로 자바에서 작성된 쿼리를 오라클로 전달하는 기능을 수행하는 클래스는 Statement 를 사용하나 실제로는 이를 보다 향상시킨 PreparedStatement 클래스를 사용하게 된다.
   이때 사용하게 되는 쿼리는 꼭 오라클에서 테스트를 실시하여 해당 구문이 제대로 수행되는지 확인한 후 프로그램에 적용을 시켜야 오류가 발생할 확률이 줄어들게 된다.


오라클 DB에 접속하는 CorrenctionTest 클래스
 import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class correctionTest {
    public static void main(String[] args) {
        
        try {
            // 1. 드라이버 로딩
            Class.forName("oracle.jdbc.driver.OracleDriver");
            System.out.println("드라이버 로딩 성공");
            
        // forName의 인자로 전달된 주소에 드라이버가 없을 경우
        } catch (ClassNotFoundException e) {
            System.out.println("드라이버 로딩 실패");
        }
        
        try {
            // 오라클DB에 연결
            Connection conn = DriverManager.getConnection(
                    "jdbc:oracle:thin:@아이피:리스너포트:SIDl", "오라클 아이디" , "오라클 패스워드");
            System.out.println("커넥션 성공");
            
            // 실제 사용 코드
            
            // 커넥션은 반드시 닫아주어야 한다.
            conn.close();
            System.out.println("커넥션 종료");
        // 오라클 DB에 연결이 실패하였을때
        } catch (SQLException e) {
            System.out.println("커넥션 실패");
        } 
    }
}


출처 : http://blog.naver.com/lunaticmute?Redirect=Log&logNo=90047926176


댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함