: Java DataBase Connect
: DBMS(oracle, mysql)의 driver 필요
→ DBMS 제작사(oracle)가 자신들의 DB에 접속하는 모듈을 제공한 것
: oracle의 자바 프로그램용 접속 모듈 위치
→ C:\app\user_name\product\21c\dbhomeXE\jdbc\lib
→ ojdbc8.jar : oracle java database connect driver
→ eclipse에 추가
▶ JDBC Coding
: 오라클 접속 프로그램(driver) 실행 - ojdbc8.jar 메모리 로딩
: DBMS 접속(통신) - ip address(위치), ip port(수신인), id, pw
: SQL 전송
→ ※ 주의! 이 때 ; 삽입 X
: SQL 수행 결과 확인
: 접속 종료(close())
package ch17;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class JDBC1Overview {
public static void main(String[] args)
throws ClassNotFoundException, SQLException {
// oracle driver 로딩 (ojdbc8.jar)
Class.forName("oracle.jdbc.driver.OracleDriver");
// DBMS 접속(통신)
String id = "c##scott";
String pw = "tiger";
// url : ip address + ip port, DBMS 제조사마다 다름
String url = "jdbc:oracle:thin:@localhost:1521:xe";
Connection con = DriverManager.getConnection(url, id, pw);
// SQL 전송, String sql에 ; 삽입 X
String sql = "SELECT * from EMP";
Statement stmt = con.createStatement();
// SQL 수행 결과 확인
ResultSet res = stmt.executeQuery(sql); // Iterator와 동작 방식 유사
System.out.println("EMPNO\tENAME\tJOB\tMGR\tHIREDATE\tSAL\tcomm\tDEPTNO");
while(res.next()) {
System.out.print(res.getInt("EMPNO") + "\t");
System.out.print(res.getString("ENAME") + "\t");
System.out.print(res.getString("JOB") + "\t");
System.out.print(res.getInt("MGR") + "\t");
System.out.print(res.getString("HIREDATE") + "\t");
System.out.print(res.getInt("SAL") + "\t");
System.out.print(res.getInt("comm") + "\t");
System.out.println(res.getInt("DEPTNO"));
}
// 접속 종료
res.close();
stmt.close();
con.close();
}
}
출력 결과