java.sql Package 살펴보기
java.sql.Driver
- DriverManager에 의해서 관리되고 Class.forName(Driver이름);을 주면 DriverManager에 register한다.
java.sql.Connection
Connection 에다가 url과 user ,password를 넘겨줘서 네트워크 소켓 넘겨주듯, 넘겨준다.
- conn = DriverManager.getConnection(url,user,password);
java.sql.preparedStatement
statement를 가져옴.
stmt = conn.prepareStatement(sql);
java,sql.resultSet
DB가 swap 공간에 resultSet을 넘겨주면, 그 주소를 연결해서 가지고 있는다!!!
rSet = stmt.executeQuery();
String selectSQL = "select department_id,department_name,location from department";
1 Class.forName(driveClass); //driver를 등록!! 2 conn = DriverManager.getConnection(url, user, password); //db와 ㅇ 3 statement = conn.prepareStatement(selectSQL);
//sql문들 가지고 처리한다.
4 resultSet = statement.executeQuery();
//쿼리를 실행하고 메모리에 적재된 결과의 주소를 연결한다.
Connection conn = null; Statement statement = null; ResultSet resultSet = null; try { //Class Loader!! 싱난다. Class.forName(driveClass); System.out.println("연결 대기중"); conn = DriverManager.getConnection(url, user, password); System.out.println("ORACLE DB 연결 완료"); String selectSQL = "select department_id,department_name,location from department"; statement = conn.prepareStatement(selectSQL).executeQuery(); resultSet = statement.executeQuery(); // 조회결과 처리하기 while (resultSet.next()) { String dept_id = resultSet.getString(1); String dept_name = resultSet.getString(2); String location = resultSet.getString(3); System.out.println(dept_id + "\t" + dept_name + "\t" + location); } } catch (ClassNotFoundException | SQLException e) { e.printStackTrace(); } finally { if (resultSet != null) { try { resultSet.close(); } catch (SQLException e) { } } if (statement != null) { try { statement.close(); } catch (SQLException e) { } } if (conn != null) { try { conn.close(); } catch (SQLException e) { } } }
'JAVA > JDBC' 카테고리의 다른 글
JDBC의 구성 & 주요 DBMS (0) | 2015.03.11 |
---|---|
DAO (Data Access Objects) (0) | 2015.03.09 |
JDBC Driver Loading (0) | 2015.03.04 |
조인 (JOIN) (0) | 2015.03.03 |
WHERE절 주요 연산자 (0) | 2015.03.03 |