JDBC 작업순서
[JAVA와 DB의 연동 : JDBC(Java DataBase Connection) Programming]
★ JDBC 작업 순서
① Driver 클래스를 메모리에 Loading ▶ 정적로딩
- JDBC Driver 등록
(C:\oraclexe\app\oracle\product\11.2.0\server\jdbc\lib\ojdbc6.jar)
② JDBC API Import : JAVA와 DB를 연동해 주는 패키지를 import ▶ import java.sql.*
Class |
DriverManager |
드라이버 |
OracleDriver.class |
Interface |
Connection |
연결객체 |
|
Statement |
전송객체 (SQL 문장전송) |
|
|
PreparedStatement |
많이 사용 |
||
ResultSet |
결과객체 |
Select Qurey |
③ OracleDriver.class 생성 ▶ 동적로딩
- Class.forName("oracle.jdbc.driver.OracleDriver");
④ Connection(연결객체) ▶ jdbc:oracle:thin:@127.0.0.1:1521:XE
- jdbc:oracle:thin: ▶ 프로토콜, 구분기호는 콜론
- @127.0.0.1:1521:XE ▶ 서브프로토콜 : IP 시작전에 @기호, 포트번호, 서비스네임
- user : hanul, password : 0000
⑤ SQL문장 전송(전송객체) : Statement, PreparedStatement
- Statement 전송객체 생성 : Stmtement st = conn.createStatement();
- PreparedStatement 전송객체 생성 : PreparedStatement ps = conn.preparedStatement(sql);
⑥ SQL 문장 작성 : String sql = " ~~~ ";
⑦ Statement 객체에 SQL 문장을 전송
- insert, delete, update ▶ executeUpdate();
- select ▶ executeQuery();
※ JAVA 입력변수를 이용한 SQL문장 작성시 ▶ “ + 변수명 + ”
String sql = "insert into tblMember values";
sql += "( " + num + " , ' " + name + " ', " + age + " , ' " + addr + " ', ' " + tel + " ')";
※ PreparedStatement 작성 시 유의사항
- 먼저 SQL 문장을 작성한다.
- SQL 문장에서 매개변수(JAVA변수)는 ?로 작성
- ps.setInt(), ps.setString() : 값(변수)을 할당
- 일련번호는 1부터 시작
- ps.executeUpdate(), ps.executeQuery() : SQL문 전송 시 괄호 안에는 입력하지 않는다.
String sql = "insert into tblMember values(?, ?, ?, ?, ?)"; PreparedStatement ps = conn.preparedStatement(sql); ps.setInt(1, 5); ps.setString(2, "지선우“); ps.setInt(3, 40); ps.setString(4, "서울시 강남구 청담동“); ps.setString(5, "010-5555-5555"); ps.executeUpdate(); |