Notice
Recent Posts
Recent Comments
Link
05-15 14:09
관리 메뉴

필피리의 잡학사전

자바와 oracle연동하기 본문

Developer/Java

자바와 oracle연동하기

김수필 2011. 12. 27. 19:03
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
 

1.먼저 ojdbc.jar 파일을 다운받는다. (ojdbc14파일이 최신 파일이 아니므로 더 최신 파일을 다운받아도된다.)

2.자바 프로젝트 생성후 ojdbc파일을 추가한다.
 Eclipse : 프로젝트 속성 -> java build path
->libraries -> add external jars
클릭후 ojdbc14.jar파일 추가

3.class 생성후 java.sql.*을 import한다.
 import java.sql.*;

4.Database와 연동할 부분에 다음 소스코드를 추가하고 수정하여 사용한다.

        Connection conn = null;
        ResultSet rs = null;
        Statement stmt = null;
        String url = null;
        String id = "HR";
        String pw = "hr";
   
        try{
            // ip : 127.0.0.1 ,  port :1521로 접속을 시도한다.
            url ="jdbc:oracle:thin:@127.0.0.1:1521";
            // oracleDriver클래스가 존재하는지 확인한다.
            Class.forName("oracle.jdbc.driver.OracleDriver");
            // DB의 커넥션을 가져온다. (id와 pw는 DB의 아이디와 패스워드로 설정한다.)
            conn = DriverManager.getConnection(url,id,pw);
           
            System.out.println("DB connection complete");
           
            //쿼리를 처리하기 위하여 Statement를 생성한다.
            stmt = conn.createStatement();
            String sql1 = "select * from employees";
            //다음 쿼리문을 실행하여 결과 집합을 가져온다.
            rs = stmt.executeQuery(sql1);            
            //레코드를 하나씩 이동하며
            while(rs.next()){
                // 첫번째 애트리뷰트를 가져온다.
                String no = rs.getString(1);
                // 두번째 애트리뷰트를 가져온다.
                String name = rs.getString(2);
                // 세번째 애트리뷰트를 가져온다.
                String grade = rs.getString(3);
                // 결과를 화면에 출력한다.
                System.out.println(no+", " + name +", "+grade);
            }
           
            // Statement와 DB커넥션을 닫는다. (쿼리를 처리한후 반드시 커넥션까지 같이
               클로즈 해주는게 좋다.)
            stmt.close();
            conn.close();

  

        } catch (Exception e){
         // url이 잘못되었거나, 라이브러리가 제대로 추가 안된경우 또는 기타 예외사항이 발생하였을
         때 메세지를 출력한다.
            e.printStackTrace();
        }


Comments