Post

JDBC로 OLACLE 접속


Oracle Database 11g Express Edition 설치 



SQL Plus


  • cmd 창을 열어서 sqlplus system/pass 를 치면 실행된다.
  • pass는 Oracle 설치 시 설정했던 비밀번호 이다.
  • 로그인 : sqlplus <id>/<pass>
  • 일반 계정 생성 : create user <id> identified by <pass>; 
  • 권한 부여 : grant connect, resource to <id>
  • 로그아웃 : exit

오라클 SQL Developer(GUI)



JDBC 사용하기


  • Java프로그램에서 sql문을 사용할 수 있는 Java API
  • DB 프로그램에서 JDBC Driver를 제공해서, 다른 DB를 사용할 때 그냥 연결만 해주면 된다.
  • Oracle 드라이버 사용을 위해 ojdbc6_g.jar 파일 복사. Copy Path에 넣는다.
  • ojdbc6_g.jar Path : C:\oraclexe\app\oracle\product\11.2.0\server\jdbc\lib
  • Copy Path : C:\Program Files\Java\jdk-11\lib\ext\
  • Eclipse Menu-Window-Preferenes-Java-Build Path-Classpath Variable

JDBC DB연결 예제


<%@page import="java.sql.DriverManager" %>

<%@page import="java.sql.ResultSet" %>
<%@page import="java.sql.Statement" %>
<%@page import="java.sql.Connection" %>
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
    <%!
    Connection connection;
    Statement statement;
    ResultSet resultSet;
   
    String driver = "oracle.jdbc.driver.OracleDriver"// 드라이버 정보
    String url = "jdbc:oracle:thin:@localhost:1521:xe";       // 어디에 접근할 것인지
    String uid = "scott";                                                  // login id
    String upw = "tiger";                                                  // login user pass
    String query = "select * from member";
    %>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv = "Content-Type" content="text/html" charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
<%
out.println("???");
       // db관련 에러가 날 수 있기 때문에 항상 예외 처리를 함
       try{
              Class.forName(driver);
              connection = DriverManager.getConnection(url, uid, upw);      // db에 로그인
              statement = connection.createStatement();
              resultSet = statement.executeQuery(query);
              out.println("query 날리기~~ ");
              while(resultSet.next())
              {
                     out.println("없다?~ ");
                     
                     String id = resultSet.getString("id");
                     String pw = resultSet.getString("pw");
                     String name = resultSet.getString("name");
                     String phone = resultSet.getString("phone");
                     
                     out.println("아이디:"+id+", 비밀번호:"+pw+"이름:"+name+",전화번호:"+phone+"<br />");
              }
       }catch(Exception e)  {
              out.println(e);
       }finally{
              
              // 마치면 접속 종료
              try{
                     if(null != resultSet) resultSet.close();
                     if(null != statement) statement.close();
                     if(null != connection) connection.close();
                     
              }
              catch(Exception e){}
       }
%>
</body>
</html>



oracle.jdbc.driver.OracleDriver 에러 해결


  • JDBC lib가 없어서 발생.
  • ProjectProperties - Java Build Path - Libraries - Add External JARs..
  • ojdbc6_g.jar 파일 선택.








▲ top